javascript - 响应中嵌套对象的 Backbone model.set

标签 javascript backbone.js backbone-model

我有一个 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 中删除了尺寸属性。响应中的对象。

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

最佳答案

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

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

这应该可以完成工作。

关于javascript - 响应中嵌套对象的 Backbone model.set,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47891320/

相关文章:

javascript - 使用 Javascript 和 PHP 的 24 小时倒计时器

javascript - 使用复选框交换内容在 div 元素中的位置

javascript - Moment JS持续时间人性化更精确

javascript - 更新我对 Backbone 模型变化的看法

Backbone.js 创建方法不向 sinatra 发送参数

JavaScript - getElementsByClassName 适用于一个函数,但不适用于另一个函数

javascript - 在 Backbone.js 的事件处理程序中获取对原始对象的引用

javascript - 重写 Backbonejs 模型获取函数

javascript - 主干模型在创建时已经具有属性

javascript - 主干模型属性在更新另一个属性时得到更新