Do not place {$orderId} inside quotes in
- David Matějka
- Moderator | 6445
nette to je tam da, pokud jsou potreba (tzn pokud orderId
bude
string)
- Robin Martinez
- Člen | 89
Cus, muze mi nekdo prosim rict, jak se tedy spravne resi nasledujici radek v JS:
const search = '{$search}'
za predpokladu, ze $search muze byt prazdny? Prisel jsem na to, ze
const search = `{$search}`
ZATIM funguje, ale jelikoz kazda nova verze latte a obecne vseho v nete roz**be vsechno okolo, radsi se ptam. Diky
- Robin Martinez
- Člen | 89
ne, nejde, latte tam nehodi nic a kod vypada takto:
const search =
const xxx = '' //dalsi radky random kodu
cimz vznikne syntax error v javascriptu
Editoval Robin Martinez (11. 3. 2022 11:28)
- Robin Martinez
- Člen | 89
Ještě dodatek, který jsem se dozvěděl až teď, který za to může je, že je tam |noescape:
const search = {$search|noescape}
bez něj se tam uvozovky vkládají správně
Davide, proměnná je prázdný string:
'' barDump($search) 📍
a zkoušel jsem to na verzi latte 2.7, 2.8, 2.9 a 2.11
- David Grudl
- Nette Core | 8218
Nikdy nepouzivej noescape! Jen pokud přesně víš, co děláš. Což nevíš a Latte se tě na to snaží upozornit.
- Robin Martinez
- Člen | 89
To pochopitelne vim, jen predelavam kod byvaleho programatora. Nicmene nevim, jestli je spravne, ze latte ‚znici‘ cely javascript.
EDIT: Ok, podival jsem se na to do detailu a vubec nevim, proc tam predchozi programator to noescape mel. Dal jsem ho pryc a zatim to vypada funkcne.
Diky za info
Editoval Robin Martinez (14. 3. 2022 8:53)
- MKI-Miro
- Člen | 277
Ahojte
Ja este doplnm otazku ako spravit nieco taketo:
Toto samozrejme hodi chybu „Do not place inside quotes“
<script>
dataLayer.push({
'category': "{$product->name}/{$product->category->name}",
});
</script>
bez uvodozviek to ale chce vykonat operaciu delenia a ja by som potreboval aby to sravilo:
'category': "Nazov/Kategoria"
- David Grudl
- Nette Core | 8218
Případně
<script>
dataLayer.push({
'category': {$product->name . '/' . $product->category->name},
});
</script>
- Robin Martinez
- Člen | 89
Kamil Valenta napsal(a):
Ten JavaScript nezničilo latte, ale bývalý programátor.
S tím naprosto souhlasím. Však víme, jak to chodí.
Jen jsem naznačoval, že nevím, proč se v latte vždycky změní/rozbije něco, co dříve fungovalo. Teď jsme natáhli nové latte 2.11 a v celým projektu akorát předěláváme dvojtečky na čárky. Pokrok nezastavíš :)
- David Grudl
- Nette Core | 8218
Dřív to nefungovalo. Měl jsi to blbě a Latte tě na to upozornilo, tak mu podekuj a neremcej :)
- Robin Martinez
- Člen | 89
Dekuji moc Davide,
velice radi prispivame na projekt, u ktereho nam tvurce rekne, at neremcame ;)
Editoval Robin Martinez (20. 5. 2022 9:54)
- Kamil Valenta
- Člen | 815
Ale Ty nepřispíváš na to, abys mohl remcat.
Přispíváš na to, aby Tě latte varovalo před více a více hovadinami,
které do kódu zanese třeba i předchozí programátor.
Nechápu, co Ti vadí. Měli jste v kódu kravinu, latte Tě na ni upozornilo, řeklo Ti, jak ji opravit. Tys ji opravil a je to OK. To je přece ideální stav.