javascript - 当值与 null 设置之前的前一个值相同时,Backbone.js 更改事件不会触发

标签 javascript backbone.js

1) 将模型数据设置为一个值model.set({state : 'wa'})

2)将模型数据设置为null model.set({state : null})

3) 将模型数据设置为第一个值model.set({state : 'wa'})

当您在将模型数据设置为 null 之前将其设置为先前的值时,不会触发更改事件。如果我将示例更改为在步骤 1 中显示 model.set({state : 'ca'}),它将触发所有三个集合的更改事件。在此示例中,仅针对步骤 1 和步骤 2 触发了两个更改事件。

当将值设置为 null 之前的上一个值时,为什么主干不会触发事件?

附注

我刚刚检查了 model.previousAttrbutes() 以查看将值设置为 null 时它是否不会更新。确实如此。因此,为什么不触发更改事件仍然没有意义。

最佳答案

为了解决这个问题,我简单地使用了unset()

model.unset('state',{silent: true});

关于javascript - 当值与 null 设置之前的前一个值相同时,Backbone.js 更改事件不会触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15336801/

相关文章:

javascript - 如何使用 Javascript 而不是 JQuery 获取选定的选项 ID

javascript - 您如何正确检测浏览器对不透明度的支持?

javascript - 为拖放界面选择 Javascript MVC 框架

javascript - 在 backbone.js 中处理重新渲染 View 的最佳方法?

javascript - 如何使用 Backbone.PageableCollection 和自定义 Express 路由处理分页

javascript - 如何在没有 "indentation pyramids"的情况下正确表达任意 Promise 链?

javascript - 加载页面时 jQuery load() 不工作

javascript - 隐藏除表头以外的表行

javascript - getNextPage 后 Chrome 中的 Backbone 分页滚动问题

javascript - 即使 HTML 元素没有附加到 DOM,它们也会加载吗? Backbone 观点呢?