我有这个
ServerInfoModel = Backbone.RelationalModel.extend({
relations: [
{
type: Backbone.HasMany,
key: 'data',
relatedModel: 'Data',
collectionType: 'DataCollection',
reverseRelation: {
key: 'id',
includeInJSON: 'id'
}
}
]
})
Data = Backbone.RelationalModel.extend({
});
DataCollection = Backbone.Collection.extend({
model: Data
});
现在我有一个与ServerInfoModel关联的视图。 如果我从该集合中的模型数据更改值,则不会在ServerInfoModel上触发“更改”,仅在DataCollection上触发;
如何从DataCollection将“change”事件传递给ServerInfoModel?
答案 0 :(得分:1)
我发现了如何做到这一点,只是听'数据'变化并触发'改变'进一步
ServerInfoModel = Backbone.BaseRelationalModel.extend({
url: function () {
return "/examples/serverInfo.json"
},
setup: function () {
var self= this;
this.get('data').on('change', function () {
self.trigger("change");
});
},
relations: [
{
type: Backbone.HasMany,
key: 'data',
relatedModel: 'Data',
collectionType: 'DataCollection',
reverseRelation: {
key: 'id',
includeInJSON: 'id'
}
}
]
});
Data = Backbone.BaseRelationalModel.extend({
});
DataCollection = Backbone.Collection.extend({
model: Data
});