Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 主干模型->;收集->;型号->;更新-不触发根模型上的更改_Javascript_Backbone.js_Backbone Relational - Fatal编程技术网

Javascript 主干模型->;收集->;型号->;更新-不触发根模型上的更改

Javascript 主干模型->;收集->;型号->;更新-不触发根模型上的更改,javascript,backbone.js,backbone-relational,Javascript,Backbone.js,Backbone Relational,我正在吃这个 ServerInfoModel = Backbone.RelationalModel.extend({ relations: [ { type: Backbone.HasMany, key: 'data', relatedModel: 'Data', collectionType: 'DataCollection', revers

我正在吃这个

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上触发


如何将“更改”事件从数据收集传递到ServerInfoModel?

我知道了如何做,只需聆听“数据”更改并进一步触发“更改”

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
});