Я изучаю и использую Backbone.js.
У меня есть модель Item и соответствующее представление Item. Каждый экземпляр модели имеет атрибуты item_class и item_id, которые я хочу отразить в качестве атрибутов "id" и "class" соответствующего представления. Каков правильный способ достижения этого?
Пример:
var ItemModel = Backbone.Model.extend({
});
var item1 = new ItemModel({item_class: "nice", item_id: "id1"});
var item2 = new ItemModel({item_class: "sad", item_id: "id2"});
var ItemView = Backbone.View.extend({
});
Как мне реализовать представление так, чтобы представление el переводилось на:
<div id="id1" class="nice"></div>
<div id="id2" class="sad"> </div>
В большинстве примеров, которые я видел, представление el служит бессмысленным элементом-оболочкой, внутри которого нужно вручную написать "семантический" код.
var ItemView = Backbone.View.extend({
tagName: "div", // I know it the default...
render: function() {
$(this.el).html("<div id="id1" class="nice"> Some stuff </div>");
}
});
Итак, при визуализации вы получаете
<div> <!-- el wrapper -->
<div id="id1" class="nice"> Some stuff </div>
</div>
Но это похоже на отходы - почему есть внешний div? Я хочу, чтобы el переводил непосредственно во внутренний div!