作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的目标是能够让此代码运行 alert(),即使事件是在监听器设置后触发的。标准 Backbone.Events.on 不支持这个。
app.trigger('alarm');
app.onRetro('alarm', function(){
alert();
});
只要事件已经至少触发一次,追溯事件监听器就应该立即触发。它们还应该继续为每个后续触发器触发。
可以通过检查 app._events.alarm.length 来编写一些东西来处理这个问题,但我想知道是否有人已经解决了这个问题。
最佳答案
这是一个 example这将帮助您实现您的目标。
在这个例子中,如果你调用:
Backbone.Events.trigger('alarm', { retro: true });
报警
事件将等待下一次调用
Backbone.Events.on('alarm', callback)
执行回调。
我不知道你需要什么。所以我设置了一个 retro 事件,一旦它被使用就被删除。您可以根据需要对其进行修改。
关于javascript - U haz Backbone retroactive `on` 事件监听器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22050765/
我的目标是能够让此代码运行 alert(),即使事件是在监听器设置后触发的。标准 Backbone.Events.on 不支持这个。 app.trigger('alarm'); app.onRetro
我是一名优秀的程序员,十分优秀!