Volani n:href makra z komponenty
- ondraondra81
- Člen | 82
Ahoj,
Mám vytvořenou komponentu pro menu
use \Nette\Application\UI\Control;
use \Nette\Security\User;
class Menu extends Control
{
/** @var \Nette\Security\User */
private $user;
public function __construct(User $user)
{
$this->user = $user;
}
public function render()
{
$this->template->setFile(__DIR__ . '/../templates/components/MenuControl.latte');
$this->template->render();
}
}
v presenteru mám pak
protected function createComponentMenu()
{
$menu = new Menu($this->user);
return $menu;
}
potřebuji pak v latte šabloně zavolat vytvoření linku pro KontaktPresenter
<a n:href="Kontakt:">Kontakt</a>
Když to ale udělám vyskočí na mě hláška
Nette\InvalidArgumentException
Component with name ‚Kontakt‘ does not exist
je mě jasné, že je potřeba asi nějak předat nějakou závislost, ale tak nějak nevím jakou a jak
- Šaman
- Člen | 2666
Použij href={plink Konktakt:}
. Plink odkazuje na presenter,
link na komponentu.
Bohužel, v dokumentaci se o tom nepíše, asi i proto, že odkazování
se popisuje v kapitole odkazování
v presenteru a v presenteru skutečně funguje {link}. Můžete tam někdo
přidat
upozornění, že v komponentách se bude n:href
odkazovat na
jinou komponentu, protože tento zápis odpovídá tvaru
href={plink Konktakt:}
, pls?
Editoval Šaman (23. 5. 2014 11:17)