0

Я попытался с этим question переопределить функцию шаблона глобально, используя функцию require, и она хорошо работает для templateSetting.переопределить функцию шаблона подчеркивания, чтобы вставлять HTML глобально

Я попытался расширить/переопределить функцию _.template, чтобы обернуть div, используя приведенный ниже код. Но получить с простым шаблоном не разобранным шаблоном как этого <%= title %>

define(['underscoreBase'], function(_) { 
    _.template = function(str){ 
     return "<div class='test'>"+str+"</div>"; 
    }; 
    return _; 
}); 

Как мы добавление получения идеальным/обернуть некоторый HTML тег с _.template содержания строки? Пожалуйста, порекомендуйте.

+0

Расширение и наиважнейшая совершенно разные вещи. Что именно вам нужно? –

+0

@HenriqueBarcelos Я хотел переопределить строку _.template для обертывания HTML – mymotherland

ответ

0

Вам необходимо сохранить ссылку на оригинальный template функции:

define(['underscoreBase'], function(_) { 
    var oldTemplate = _.template; 
    _.template = function(str){ 
     return oldTemplate("<div class='test'>"+str+"</div>"); 
    }; 
    return _; 
}); 
+0

Я пробовал, но получил что-то вроде этого function (obj) {obj || (obj = {}); var __t, __ p = '', __ e = _. escape, __ j = Array.prototype.join; function print() {__ p + = __ j.call (arguments, '')} с (obj) {__ p + = ' \ r \ n'; if (showRootHeader) {; __p + = '\ r \ n ' + ((__ t = (название)) == null? '': __ t) + ' \ r \ n'; }; __p + = '\ r \ n – mymotherland

+0

Извините, я поставил строки в неправильном месте. –

+0

Я уже пробовал, теперь Uncaught ReferenceError: заголовок не определен :( – mymotherland

0

Я осуществил это как

var oldTemplate = _.template; 
    function template(str, data) { 
     return oldTemplate(
      "<div class='test'>"+str+"</div>", 
      data 
     ); 
    } 
_.mixin({ template:template }); 
return _; 
Смежные вопросы