Latte -var- syntax error unexpected =
- DavidTheNewbie
- Člen | 79
Ahojte. Rad bych pozadal o pomoc. Pri migraci z 2.1.9 na 2.2.2 puvodne funckni kod v sablone:
{var $depth = 0}
{foreach $parents as $key => $parent}
{var $depth++}
// dalsi vyuziti $depth uvnitr cyklu foreach
{/foreach}
// dalsi vyuziti $depth mimo cyklus foreach
… S inkrementovanou $depth se pote dal nakladalo (uvnitr i mimo cyklus foreach). Nyni ve verzi 2.2.2 konci chybou:
Parse Error → syntax error, unexpected ‚=‘
Pri odstraneni var z {var $depth++}, tj. {$depth++} stranka jiz funguje, avsak hodnota {$depth++} se vypisuje do sablony, coz ve verzi 2.1.9 korektne nedelala. Napr. $iterator->counter uzit nemohu, ponevadz potrebuji $depth i mimo cyklus foreach.
Editoval DavidTheNewbie (17. 2. 2017 8:27)
- DavidTheNewbie
- Člen | 79
h4kuna napsal(a):
Budeš muset udělat přes php makro
{php $depth++}
Nicméně je možné použít iterator v cyklu foreach
{$iterator->getCounter()}
Ahoj. Pouziti PHP makra {php $depth++} Generuje chybu:
User Error → Exception in Nette\Bridges\ApplicationLatte\Template::__toString(): Unknown macro {php} in …/../default.latte:15 in /var/www/nette/vendor/latte/latte/src/Latte/Compiler.php:530
getCounter() pouzit bohuzel nemohu, jelikoz potrebuji promennou pouzit i mimo cyklus foreach.
Editoval DavidTheNewbie (17. 2. 2017 8:46)
- DavidTheNewbie
- Člen | 79
CZechBoY napsal(a):
V ty 2.2 to je asi ještě otazník.
{? $depth++}
Otaznik se zda byt korektni reseni. Existuje nekde nejaka dokumentace, kde by se clovek o nutnosti teto zmeny dozvedel?