2015-03-05 3 views
2

В следующем коде, если точка с запятой удалена, механизм шаблона не выдает ошибку, иначе возникает ошибка.Почему точка с запятой в шаблоне ejs вызывает ошибку

<ul> 
    <% for (i = 0; i < array.length; ++i) { %> 
     <%= JSON.stringify(array[i]); %> 
    <% } %> 
</ul> 

Хотя положительная точка с запятой синтаксически правильная, почему ошибка броска шаблона двигателя?

+4

Содержимое '<=%' является выражением, а не выражением. –

ответ

2

Как сказано в сообщении @torazaburo, содержимое между <=% и %> является выражением, которое обрабатывается ejs. Однако подумайте об этом так:

Ваша цель - отобразить содержимое, возвращенное с JSON.stringify, на страницу справа? Поэтому в этом случае подумайте о выражениях ejs как неявно вызывающем .toString() о результате выражения, а затем вставив эту строку в страницу. Добавив полуточку, вы прекратили утверждение без присвоения возвращаемого значения чему-либо.

Смежные вопросы