2016-04-14 6 views
0

Использование пользовательских тегов в (Wordpress упаковано) Подчеркивание 1.6, я пытаюсь сделать что-то вроде этого:подчеркивания 1.6 шаблоны, позволившие операторы

{| if (1 < 2) print('success') |} 

Вот Подчеркивание пользовательские конфигурации:

_.templateSettings = { 
    evaluate : /\{\|(.+?)\|}/g, 
}; 

Всякий раз, когда я использую < или > операторов, я получаю следующее:

Uncaught SyntaxError: Unexpected token ; 

Но если я использую ==, все в порядке. Зачем? Есть ли какие-то ограничения для операторов, о которых я не знаю?

+0

Это хорошо работает (https://jsfiddle.net/ambiguous/wa6ao0o9/). Как выглядит ваш шаблон? Кроме того, рекомендуется избегать путаницы всех трех регулярных выражений '_.templateSettings'. –

+0

Спасибо за помощь! Я выяснил эту проблему: я использовал функцию .innerHTML для извлечения содержимого своего шаблона и преобразовал некоторые символы в html-объекты: «<» - один из них. –

ответ

0

Поскольку мой шаблон был фактическим элементом HTML, извлечение кода шаблона с использованием innterHTML возвращало строку с закодированными объектами html. Решение было простым:
var template = _.template(_.unescape(this.el.innterHTML)).

+0

Или лучше, сохраните свои шаблоны в контейнерах '