次のオブジェクト構造があり、特定のタイトル値を取得してから、新しい値に設定する必要があります。ネストされたオブジェクト内に入ると、Ember オブジェクトの .get() および .set() メソッドが失われることを私は知っています。標準の JavaScript の方法で値を設定しようとすると、ember.set() を使用する必要があるというエラーが発生しました。
これは、App.job.code への変更を観察したときに起こりたいことですが、Assertion failed: You must use Ember.set() to access this property (of [object Object]) が表示されます。
updateTitle: function(){
App.jobs.jobProducts[0].allocations[0].allocationTitle = "test2";
}.observes("App.job.code")
これはどのように達成するのが最善でしょうか? ありがとう
App.jobs = [
{
id: 0,
jobTitle: "This is the only job",
jobProducts: [
{
id: 0,
productTitle: "Product 1",
allocations:[
{
id: 0,
allocationTitle: "Allocation 1",
deliverys:[
{
id: 0,
deliveryTitle: "Delivery 1"
},
{
id: 1,
deliveryTitle: "Delivery 2"
}
]
},
{
id: 1,
allocationTitle: "Allocation 2",
deliverys:[
{
id: 0,
deliveryTitle: "Delivery 3"
},
{
id: 1,
deliveryTitle: "Delivery 4"
}
]
}
]
},
{
id: 1,
productTitle: "Product 2",
allocations:[
{
id: 0,
allocationTitle: "Allocation 3",
deliverys:[
{
id: 0,
deliveryTitle: "Delivery 5"
},
{
id: 1,
deliveryTitle: "Delivery 6"
}
]
},
{
id: 1,
allocationTitle: "Allocation 4",
deliverys:[
{
id: 0,
deliveryTitle: "Delivery 7"
},
{
id: 1,
deliveryTitle: "Delivery 8"
}
]
}
]
}
]
}
];