Viditelnost proměnných v rámci {snippet}
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- Svaťa Šimara
- Člen | 98
Zdarec,
docela sem byl překvapený, že ve snippetech nejdou vidět lokální proměnné:
{var $xxx = 'abc'}
{snippet forAjax}
{$xxx}
{/snippet}
Skončí chybou.
Může za to předávání pouze proměnných šablony místo všech
proměnných: https://github.com/…ckMacros.php#L239
Úmysl?
Nejdou potom překreslovat formuláře po částech:
{form formXXX}
{snippet forAjax}
{input abc}
{/snippet}
{input def}
{/form}
- Svaťa Šimara
- Člen | 98
Dík za odpověď, takže význam snippetu se posunul
z: výstřižku stránky, který se posílá
na: samostatná část šablony, která je izolovaná od okolí
Možná by se hodilo upravit syntaxi, aby bylo vidět, že co je uvnitř {snippet}, se chová jako nesouvisející šablona, třeba:
{snippet xxx}
...
{/snippet}
{block content}
{includeSnippet xxx}
{/block}
ale takový BC break nikdo neschválí :-)