0
我想听听骨干模型'changed'事件的某些属性,如有没有办法在backbonejs上收听沉默事件?
this.listenTo(this, 'change:someAttr', this.eventListener);
但是,它被悄悄地发生变化,所以正常情况下聆听不起作用。有没有办法听取骨干的沉默事件?
我想听听骨干模型'changed'事件的某些属性,如有没有办法在backbonejs上收听沉默事件?
this.listenTo(this, 'change:someAttr', this.eventListener);
但是,它被悄悄地发生变化,所以正常情况下聆听不起作用。有没有办法听取骨干的沉默事件?
我能想到的唯一方法就是通过某种“轮询”,即通过setInterval重复检查。
initialize: function() {
this.listenSilent();
},
listenSilent: function() {
var startVal = this.get('myAttr');
var that = this;
var silentListener = setInterval(function() {
if (that.get('myAttr') !== startVal) {
that.trigger('myevent'); // any custom event name that you can listen to
stopInterval(silentListener);
that.listenSilent();
}
}, 100);
}
该选项是有原因的。你可能需要猴子补丁骨干,并禁止选项 –
选项本身是geat。但如果需要上升,能够手动覆盖它会很好。 – Tohveli
这意味着你必须去覆盖源代码。提供一个选项和另一个选项来抑制先前选项的功能没有任何意义。如果你不想要功能 - >不要使用它。这个用例听起来像是在试图绕过已经构建的应用程序。提供可供选择的解决方案并非框架工作 - 您必须自己动手...... –