Próbuję uzyskać Velocity, aby wypisać następujący kod JavaScript:
if ((whichOne+1) <= numCallouts ) {
whichOne = whichOne + 1; } else {
whichOne = 1;
}
Ilekroć próbuję uzyskać Velocity, aby wydrukować a> lub a <, oznacza to jako & gt; lub & lt ;, co nie pomaga mi, odkąd próbuję zrobić to by stworzyć JavaScript. Próbowałem:
#set ( $gt = ">" )
Ale nawet to kończy się jako & gt;
Z góry dziękuję.
Odpowiedzi:
1 dla odpowiedzi № 1Nie jest to zachowanie domyślne, jedynym powodem, dla którego mogę myśleć, dlaczego tak się dzieje, jest to, że masz zdarzenie ReferenceInsertionEventHandler
skonfigurowany za pomocą EscapeHtmlReference
albo w twoim velocity.config
lub w kodzie inicjalizacji prędkości.
Tutaj jest więcej informacji o wydarzeniach
1 dla odpowiedzi nr 2
Miałem ten sam problem z Velocity - jednak problem polega na tym, że używałem Velocity jako osadzonego języka obcego i nie miałem dostępu do zmiany ustawień prędkości.
Niestety jedyne rozwiązanie, jakie udało mi się znaleźć, to przepisanie kodu bez użycia większej lub mniejszej niż jawna, co jest wprawdzie okropne, ale chodzi o to, żeby to działało ...
Oto przykład obejścia dla warunków warunkowych, gdy próbujesz sprawdzić, czy jedna liczba jest większa od drugiej:
if (n1 > n2) //Doesn"t work because velocity turns this into if (n1 > n2)
if (n1 != n2)
{
diff = n1 - n2;
abs = abs(n1 - n2);
if (diff / abs == 1) //Greater than
else //if == -1 then less than
}
else //Equal
0 dla odpowiedzi № 3
Być może jesteś w stanie używać alternatywnych symboli opisanych tutaj:
Więc spróbuj użyć if (n1 gt n2)
.