Ember - 如何在控制器上添加/删除数组属性中的元素

Mar*_*ins 5 javascript arrays ember.js

给出一个ember中的控制器:

export default Ember.Controller.extend({
  stringProp: "",
  arrayProp: []
});
Run Code Online (Sandbox Code Playgroud)

例如,您可以使用设置字符串属性this.set('stringProp', "Blah blah").但这是最重要的.我想要做的是送到数组属性.

是否有比这更好(更短或更快)的方式:

this.set('arrayProp', this.get('arrayProp').push(element));
Run Code Online (Sandbox Code Playgroud)

此外,是否有从这样的数组属性中删除元素的快捷方式?

小智 19

您正在寻找pushObject,removeObject等见http://emberjs.com/api/classes/Ember.MutableArray.html.

this.get('arrayProp').pushObject(element);
Run Code Online (Sandbox Code Playgroud)

对于计算属性和观察者的正确行为,强烈建议您使用这些方法而不是push其他本机Array方法.