2015-02-10 3 views
0

Привет, я новичок в магистрали, используя require и подчеркивание. Хотите сделать шаблон, пожалуйста, поправьте меня. Не знаю, где я иду не так.Шаблон не отображает ошибку подчеркивания

mainParentTemplate.html

<div> 
     manojbojja 
</div> 

mainWidgetnew.js

define(['jquery','underscore','backbone', 
    'text!app/templates/main/mainParentTemplate.html', 
    'masonry', 
    'imagesLoaded', 
    'Aviary', 
    'date', 
    'datetimepicker', 
    'infinitescroll', 
    'bootstrap'], 
    function($, _, Backbone, 
      MainParentViewTemplate){ 

    var RssParentView = Backbone.View.extend({ 
     template: MainParentViewTemplate, 

     initialize: function() { 
      this.render(); 
     }, 

     render: function() { 
      this.$el.html(_.template(this.template,{})); 
     } 
    }); 

    var FeedsWidget = function() { 

     this.render = function(el) { 
      this.view = new RssParentView({el: el}); 
     }; 

     return this; 
    } 

    return FeedsWidget; 

}); 

главная страница HTML скрипт

<div id="main-widget"> 
</div> 

<script> 
    window.init = function(){ 
     require(['app/mainWidgetnew'], function(FeedsWidget){ 

      var mainWidgetnew= new FeedsWidget(); 
      mainWidgetnew.render("#main-widget"); 
     }); 
    }; 
</script> 

Я получаю uderscore ошибку "неопределенные не является функцией"

this.$el.html(_.template(mainParentTemplate)); 

ответ

0

Функция _.template Underscore возвращает функции, которые могут быть оценены для рендеринга.

Вы можете сделать следующее в рендеринге:

var template = _.template(this.template); 
this.$el.html(template(paramsForTemplate)); 

Где paramsForTemplate не является обязательным и может быть использован для передачи параметров шаблона.

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