2013-12-09 4 views
2

Я хочу написать некоторые вспомогательные для FontAwesome в jade шаблона в Express.js, так что я сделал в app.js:Джейд помощник для FontAwesome

app.locals.icon = function(icon){ return '<i class="fa fa-' + icon + '"></i>'; }; 

и называется в шаблоне:

block content 
    h1= title 
    p Welcome to #{title} 
    = icon('users') 

однако он возвращает меня экранированный HTML-код. Какая хорошая практика для написания таких помощников? Как вернуть необработанный HTML?

ответ

2

Попробуйте с! = Оператор

!= icon('users') 

Refrence от http://jade-lang.com/

неэкранированные буферный код начинается с! = И выводит результат вычисления выражения JavaScript в шаблоне. Это не делает никаких экранов, поэтому небезопасно для ввода пользователем.

+0

Работает как очарование. Спасибо ! Могу ли я также спросить вас, что будет лучшим местом для того, чтобы вставить в него моего обычного помощника по нефриту? – hsz

+0

@hsz, если этот помощник принадлежит к 1 нефритовому файлу, я бы поместил его в нефрит. Поместите эту строку в нефрит: "- fa = function (icon) {...}". Вы можете использовать его:! = Fa ('user') – damphat

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