jak vytvořit a zapojit komponentu?
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- cmc
- Člen | 6
Ahoj.
Zkusil jsem vytvořit komponentu následujícím způsobem:
Do adresáře „/app/components/mojekomponenta/“ jsem si umístil třídu
pro komponentu.
A ta obahuje jen:
class MojekomponentaControl extends Control {
public function __construct()
{
}
}
V presenteru mam potom:
protected function createComponentMojekomponentaControl() {
$moje = new MojekomponentaControl();
return $$moje;
}
a v latte: {control mojekomponentaControl}
Ale dostávám chybu: „Class ‚App\Presenters\MojekomponentaControl‘ not found“
Poradil by mi někdo, jak si vytvořím komponentu?
Děkuji.
Editoval cmc (12. 1. 2015 16:32)
- Šaman
- Člen | 2666
- Nastuduj si namespace – to budeš potřebovat napříč vším programováním v PHP > 5.3. Ta chyba je v nich.
- Pak té prázdné komponentě klidně zruš konstruktor, ale přidej render
metodu. Třeba jen
echo 'Test';
Co se týče těch NS, tak jako první hotfix dej
new \MojekomponentaControl();
(zp. lomítko před třídu
komponenty).
Editoval Šaman (12. 1. 2015 16:52)