Использование handlebars.js
вместо underscore
довольно просто.Посмотрите на этот пример:
https://cdnjs.com/libraries/backbone.js/tutorials/what-is-a-view (прокрутите до раздела «Загрузка шаблона»)
SearchView = Backbone.View.extend({
initialize: function(){
this.render();
},
render: function(){
// Compile the template using underscore
var template = _.template( $("#search_template").html(), {} );
// Load the compiled HTML into the Backbone "el"
this.el.html( template );
}
});
По сути, в основе лежит соглашение о создании HTML вфункция рендеринга.Использование шаблонизатора полностью зависит от вас (что мне нравится в Backbone).Так что вы просто измените его на:
SearchView = Backbone.View.extend({
initialize: function(){
this.render();
},
render: function(){
// Compile the template using Handlebars
var template = Handlebars.compile( $("#search_template").html() );
// Load the compiled HTML into the Backbone "el"
this.el.html( template );
}
});
Поскольку вы используете require.js
, вы можете сделать Handlebars
зависимостью в верхней части вашего модуля.Я довольно новичок в этом, но похоже, что обучение будет сосредоточено на Backbone.js
шаблонах и require.js
использовании.