从基类扩展的控制器属性持久化

时间:2014-09-09 00:32:27

标签: ember.js

我对Ember中的对象模型有点困惑,特别是与控制器有关。我有一个基类,其属性是一个数组,我从基类扩展了两个控制器。基类上的数组似乎在基类的两个实例中都存在;虽然,我认为Ember会让他们成为班级的两个独立实例。粗略的例子:http://emberjs.jsbin.com/firovahoxera/1/

基类不应该实例化为两个不同的实例,还是我在考虑这个错误?提前谢谢。

1 个答案:

答案 0 :(得分:1)

数组是某种意义上的对象,即将它添加到控制器会将该数组的引用添加到控制器的所有实例中。

如果您想在所有控制器上安装实例,可以在init上创建数组。

App.BaseClassController = Ember.Controller.extend({
  setupPersists: function(){
    this.set('persists', []);
  }.on('init')
});

http://jsbin.com/firovahoxera/2/edit