响应中的嵌套对象上的骨干model.set [重复]

问题描述 投票:0回答:1

这个问题在这里已有答案:

我有一个API响应,它有一个嵌套对象,如下所示 -

{
    name: '',
    age: '',
    departments: {
        size: '',
        head: ''
    }

}

如何设置departments对象的head属性?

我试着做下面的事情

model.get('departments').set({
    head: 'abc'
})

这会抛出一个错误model.get(...)。set不是一个函数。

编辑:

试着做 -

 model.set('departments', {'head': 'abc'});

这将在departments对象中设置head属性。但是,它会从响应中的departments对象中删除size属性。

有一个更好的方法吗?我错过了什么?

javascript backbone.js backbone-model
1个回答
1
投票

我能够使用下划线的克隆函数来实现这一点。以下是解决方案 -

  var departmentObj = _.clone(model.get('departments'));
      departmentObj.head = 'abc';
      model.set({
        'departments': departmentObj
      });

这应该做的工作。

© www.soinside.com 2019 - 2024. All rights reserved.