getComponent hlásí component already exist
- Hafran
- Člen | 121
Používám getComponent, kterým si vyhledávám komponentu ve stromu.
na jednom místě mi ale Laděnka vyhodí
Component with name ‚stepform‘ already exists.
Jako by se při vyhledávání pokusila komponentu znovu vytvořit. Můžu si
komponentu předat jinak, ale spíš by mě zajímalo proč mi to píše :/
//voláno v jiné komponentě, řádek, který vyhazuje chybu:
$max = $this->presenter->getComponent("stepform")->getNumberOfSteps();
- Hafran
- Člen | 121
Továrnička v presenteru vypadá takhle.
protected function createComponentStepForm() {
$stepForm = new \Addons\StepForm();
$stepForm->addStep('Krok 1', $this->getComponent('form1'));
$stepForm->addStep('Krok 2', $this->getComponent('form2'));
$stepForm->addStep('Krok 3', $this->getComponent('form3'));
return $stepForm;
}
Ten krok na kterým se to zastaví je v metodě attached
- Hafran
- Člen | 121
No já je do sebe nevkládám, jenom je odtamtud volám a zatím ve všech případech to fungovalo. :) Nástřel se získal zde: https://forum.nette.org/…est-practice K presenteru se přece dostanu odkudkoliv, ať sem od něj zanořenej, jak chci hluboko, nebo ne? Jako že to by těm komponentám nemělo vadit.
- ViPEr*CZ*
- Člen | 817
Hafran napsal(a):
No já je do sebe nevkládám, jenom je odtamtud volám a zatím ve všech případech to fungovalo. :) Nástřel se získal zde: https://forum.nette.org/…est-practice K presenteru se přece dostanu odkudkoliv, ať sem od něj zanořenej, jak chci hluboko, nebo ne? Jako že to by těm komponentám nemělo vadit.
No když to tak sleduju, tak by to možná minimálně mohlo vyhodit jinou chybu. Přeci pokud chci vrátit instanci, tak nemůžu dostat chybu, že už existuje :-) Ano černá magie v případě neexistence zkusí instanci vytvořit, ale v případě neexistence… pak bych stejně asi čekal jinou chybu.