EmberJS - 如何更新数组中的对象

时间:2013-07-26 13:07:17

标签: ember.js

有趣的是,我不知道如何更新数组中的对象。

请参阅此jsFiddle

我收到了这个错误。

Uncaught TypeError: Object #<Object> has no method 'set' 
我试过很多方法。

target.id = "Degree";
Ember.set('target.id', 'degree');

没有任何帮助。

我试过的代码。

App.Config = [{id: "Gender"}, {id: "Martial Status"}];

var target = App.Config.findProperty("id", "Gender");

target.set("id", "Degree"); //see error in console.

1 个答案:

答案 0 :(得分:1)

你的App.Config只是一个简单的javascript对象数组,而不是Ember对象,所以它不知道set是什么。要修复,我们需要创建一个Ember对象数组:

App = Ember.Application.create({});

App.Config = [
  Ember.Object.create({id: "Gender"}), 
  Ember.Object.create({id: "Martial Status"})
];

var target = App.Config.findProperty("id", "Gender");
console.log(target.get('id'));
target.set("id", "Degree"); //see updated values in console.
console.log(target.get('id'));

工作示例http://jsbin.com/aqaber/1/edit