riot.js 2.2
通过 riot.js 官方网站上的指南,我必须调用类似
tag.trigger('event_name')
其中tag
是某个监听器的实例。
但是我必须怎么做才能触发所有标签的事件?riot.js 是否有针对此问题的任何实现,或者我必须手动解决它(通过保留所有侦听器实例)?
riot.js 2.2
通过 riot.js 官方网站上的指南,我必须调用类似
tag.trigger('event_name')
其中tag
是某个监听器的实例。
但是我必须怎么做才能触发所有标签的事件?riot.js 是否有针对此问题的任何实现,或者我必须手动解决它(通过保留所有侦听器实例)?
Riot 没有实现对所有事件监听器的引用。所以,如果你想trigger
直接对它们执行,你必须自己实现它。
但是,我建议使用另一种解决方案来通知多个事件侦听器。
如果你想让多个标签知道一个事件已经发生,你可以使用一个共享的 observable 并处理这个 observable 上的事件。请参阅这个 SO 问题。这样,您不需要保留对所有事件侦听器的引用,相反,事件侦听器需要保留对单个 observable(“事件聚合器”)的引用。
你也可以尝试将 RiotControl作为一个共享的 observable。