我有兩個模塊itemView.js
和ListView.js
。
當我獲取數據時,一切正常。Marionette.CompositeView和Marionette.ItemView之間的事件
問題是關於item view
(1)當我改變相應的模型。
a)所述ListView.js
(2)顯示,其型號有closed
值等於false
(3)
b)在動作closeTask
(1)改變該模型的值
從closed: false
到所有對象closed: true
c)在b)發生什麼變化,
但如果我重新加載頁面我得到正確的結果(具有closed
值等於true
模型沒有顯示)。
我該如何解決這個問題?
(1)
// itemView.js
var itemView = Marionette.ItemView.extend({
initialize: function() {
this.model.on('change', this.render, this);
},
events: {
'click #close': 'closeTask'
},
template: itemTemplate,
tagName: 'li',
closeTask: function() {
if (!this.model.get('closed')) {
this.model.save({
closed: true
});
}
}
});
(2)
// ListView.js
var ListView = Marionette.CompositeView.extend({
template: listTemplate,
itemView: itemView
});
(3)
// Collection
myCollection.attributes = [
{
id: 1,
name: 'bar'
closed: false
},
{
id: 2,
name: 'bar2'
closed: false
},
….
];
P.S:
當我取收集,服務器給我的只是具有封閉屬性爲假的車型。
app.addInitializer(function() {
myCollection = new MyCollection();
myCollection.fetch();
});
你對此有何看法?該產品何時關閉,你期望看到什麼變化? –