Проекты Node с разделителями шаблонов Underscore, конфликтующими в представлениях EJS

Создайте магистральный проект, используя шаблоны подчеркивания. Использование nodejs на сервере и рендеринг представлений с помощью EJS. Шаблоны подчеркивания используют те же разделители, что и EJS, и поскольку шаблоны подчеркивания находятся в моих представлениях .ejs как встроенные теги сценария, я получаю ошибки. Я попробовал следующее решение:

app.set('view options', {
    open: '{{',
    close: '}}'
});

Похоже, он все еще пытается отобразить шаблон подчеркивания и выдает ошибку:

<h2><%= title %></h2>

title is not defined

Кажется, что использование пользовательского разделителя в EJS просто добавляет к типу тегов, которые принимаются, а не изменяет их. Я также не смог найти способ выдать необработанный html, как это можно сделать в haml.


person captainill    schedule 05.09.2013    source источник


Ответы (1)


документация по подчеркиванию указывает на использование объекта _.templateSettings для переопределения способа использования разделителей. Что-то вроде этого:

_.templateSettings = {
    evaluate: /\{\{(.+?)\}\}/g,
    interpolate: /\{\{=(.+?)\}\}/g
};
person kinakuta    schedule 05.09.2013
comment
Аааа почему я не догадался. Имеет смысл сделать это таким образом. Спасибо работает. - person captainill; 05.09.2013