Jde zobrazit komponentu v jiné komponentě ?

Allconius
Člen | 313
+
0
-

Ahoj,
mám komponentu pro přihlašování uživatele SignControl a pak komponentu která vytváří kontakty DetailControl, chtěl bych v SignControl.latte zobrazovat po přihlášení údaje z kontaktů tzn.:

SignControl.latte

{if ($user->loggedIn)}

{control detail}

{/if}

Jde to ? Třeba načíst ten DetailControl v té továrně toho Sign ?

SignControlFactory.php


declare(strict_types=1);

namespace App\Components\Sign;

interface SignControlFactory
{
    public function create(): SignControl;
}
Marek Bartoš
Nette Blogger | 1177
+
+1
-

Do továrny doplňuješ jen parametry, co ti mají přijít z místa, kde voláš create(). Běžnější je v konstruktoru SignControl vyžádat DetailControlFactory. Nette ti skrze vygenerovanou SignControlFactory závislosti předá.

Ale spíš bych komponentu pro přihlašování nechal čistě pro přihlašování a po přihlášení si na jejím místě v šabloně vykreslil jinou.