Připojení komponenty k presenteru

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Ascaria
Člen | 187
+
0
-

Často vidím při vytváření komponent tvar:

public function createComponentXyz($name)
    {
    $component = new Xyz;
    return $component;
    }

… ve kterém se komponenta ihned nenapojí na presenter. Chci se zeptat, jestli je znevýhodněná (použitelnost v různých projektech, různými lidmi, atd.) komponenta, která vyžaduje připojení do stromu komponent presenteru ihned v konstruktoru? Tzn:

public function createComponentXyz($name)
    {
    $component = new Xyz($this, $name);
    return $component;
    }

… a bez toho nebude fungovat.

edit: Pokud se dotyčná komponenta vytváří v jiné komponentě, která ale není zrovna napojená na presenter, tak taky nebude fungovat, protože vyžaduje presenter už v konstruktoru.

Editoval Ascaria (5. 4. 2012 9:29)

mkoubik
Člen | 728
+
0
-

Nestačilo by tu práci s presenterem přesunout z konstruktoru do attached()? Nemusel bys pak spoléhat, že se komponenta připojuje přes konstruktor.