Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 没有方法';拥有';_Javascript_Backbone.js_Client Side - Fatal编程技术网

Javascript 没有方法';拥有';

Javascript 没有方法';拥有';,javascript,backbone.js,client-side,Javascript,Backbone.js,Client Side,模型的属性 attributes: Object array: Array[1] id: "ef93fcc0d431d1000003" state: "new" 我正在设置。。。我所做的唯一区别是向数组添加另一个值 model = array: Array[2] id: "ef93fcc0d431d1000003" state: "new" __proto__: Object 我像这样扩充数组 new_array = model.get

模型的属性

attributes: Object
    array: Array[1]
    id: "ef93fcc0d431d1000003"
    state: "new"
我正在设置。。。我所做的唯一区别是向数组添加另一个值

model =
    array: Array[2]
    id: "ef93fcc0d431d1000003"
    state: "new"
    __proto__: Object
我像这样扩充数组

new_array = model.get('array').slice()
new_array.push new_value
model.set({array: new_array})
完全错误

Object function (obj) { return new wrapper(obj); } has no method 'has'
这是Backbone.js中抛出它的部分

  // Update attributes.
  for (attr in attrs) {
    val = attrs[attr];
    if (!_.isEqual(now[attr], val)) delete escaped[attr];
    options.unset ? delete now[attr] : now[attr] = val;
    delete this._changed[attr];
    if (!_.isEqual(prev[attr], val) || (_.has(now, attr) != _.has(prev, attr))) {
        Uncaught TypeError: Object function (obj) { return new wrapper(obj); } has no method 'has'
      this._changed[attr] = val;
    }
  }
这是从服务器发送的更新

只是寻找一些想法或方向,以找出导致此错误的原因。


谢谢

您的代码似乎引用了。也许这是不存在的?

在我的例子中,问题是试图将最新版本的主干关系与旧版本的Backbone.js结合使用。将主干从v0.9.1更新到0.9.2,这一问题得到了很好的解决。

=function(obj){return new wrapper(obj);}
当我记录它时,它会发生什么?哦,我明白了,太棒了,我将主干更新到了0.9,忘了更新下划线。更新解决了问题!!!谢谢