component-macro – Komponentový model pro Latte inspirovaný Reactem
- ales.kafka
- Člen | 34
component-macro
Zveřejnil jsem experimentální rozšíření pro Latte, které dovolí psát lépe strukturované šablony bez Nette aplikačních komponent (i tam jej lze samozřejmě využít).
component-macro přidává tři makra n:component
,
n:key
, n:child
, které poskytují:
- vykreslení části stránky jako komponenty
- obalení renderovaného kódu komponentou (podobně jako například react-scrollbars)
- vykreslení komponenty + nahrazení pojmenovaných bloků
- předávání argumentů s využítím Latte mechanismů, možno zároveň rozbalit celé pole nebo předat všechny definované proměnné
Odkazy
Github:
component-macro
Součástí jsou instalační pokyny, základní ukázka a více ukázek
v testech
Dodatečné informace
Jedná se o experimentální rozšíření, nedoporučuju zatím nasazovat do produkce. Sám jsem jej zatím použil minimálně. Může obsahovat drobné chybky v opravdu komplexních případech a syntax se může změnit. I proto není zatím na addons portálu.
Zároveň mám dotaz, na instalaci v rámci Nette application.
ComponentMacro::install
vyžaduje Latte\Engine
a
adresář s komponentami. Konfigurační sekce latte.macros nedovoluje
předávat install dodatečné argumenty. Jak toto rozšíření přepsat, aby
šlo inicializovat v rámci ukázkového sandboxu mimo bootstrap.php? Zatím
jde o předání jedné proměnné $dir
, nicméně do budoucna
plánuju komplexnější načítání z více adresářů, aby šlo využít
například komponenty ve vendor, apod.
Editoval ales.kafka (19. 4. 2015 17:55)