在backbone.js中,我注意到Model
上的change
和all
事件如果set
模型的属性为其现有属性,则不会触发。backbone.js:将属性设置为现有值时触发的模型事件?
例如,如果我设置了以下事件:
ActiveUser.bind('change', this.displayActiveUser, this);
ActiveUser.bind('all', this.displayActiveUserAll, this);
然后我手动ActiveUser的值设置为空字符串:
ActiveUser.set({ text : '' });
事件触发当且仅如果ActiveUser.text
尚未设置为空字符串。
这是合理的行为。但是,即使设置的值是现有值,是否还有可以使用的事件?
更新:我没有看到任何东西在官方Backbone.js list of events。嗯。
你可以随时手动运行'ActiveUser.trigger('change')' – abraham 2012-03-27 16:13:00
谢谢 - 这就是我要做的! – Richard 2012-03-27 16:19:44
我添加了我的评论作为答案。 – abraham 2012-03-27 16:35:19