有没有一种方法可以监听 namespace 的所有事件。因此,当我听这样的事件时:
app.vent.on('notification(:id)', function(type){console.lof(type)})
它将听所有这样的事件:
app.vent.trigger('notification:info')
app.vent.trigger('notification:error')
app.vent.trigger('notification:success')
最佳答案
不会。主干通常会触发一般的eventName
事件以及eventName:specifier
事件。一个示例就是Model.change
,它允许您监听所有更改以及各个字段的更改:
model.on('change', this.onAnyPropertyChanged);
model.on('change:name', this.onNamePropertyChanged);
按照代码中的这种模式,您可以触发事件,如下所示:
app.vent.trigger('notification', 'info');
app.vent.trigger('notification:info');
并聆听一般事件:
app.vent.on('notification', function(type){
console.log(type); //-> "info"
});
关于javascript - 带通配符的 Backbone 事件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15295768/