在骨干模型上设置第三级嵌套属性

时间:2014-03-10 22:34:05

标签: javascript backbone.js backbone-model

我在更改此Backbone模型上的位置$ id时遇到了问题。

{
"approved": null,
"caption": "This is my photo!",
"created": 1393537913,
"location": {
        "_id": {
                "$id": 5
        },
        "address1": "155 West Street",
        "city": "Bangkok",
        "country": "THA",
        "latitude": "13.136",
        "longitude": "100.2068",
        "postalCode": "10330",
        "region": "AP"
        }
}

我试过了:

model.set({"location":{"_id":{"$id": 6}}})

但这显然会覆盖整个位置对象。

model.set({"location._id":{"$id":6}})

在模型上创建一个新属性“location._id”。

那么,我怎样才能深入到这个位置来改变那个属性呢?

1 个答案:

答案 0 :(得分:0)

你可以这样做:

var location = model.get('location');
location._id = { "$id": 6 };