假设我们有一堆看起来或多或少像这样的事件监听器:
window.addEventListener(events.CLOSE_FILE, () => {
// do stuff
});
现在,我们将事件监听器分散在11个不同的文件中,所有文件都添加到了window对象中。有时,每种事件类型的侦听器不止一个。
对我来说,这似乎是一个可维护性问题-调用顺序处理程序是无法预测的,并且没有一种干净的方法可以一次性查看所有侦听器,而无需使用文件中查找功能。
我的同事说他这样做是为了确保松耦合。我看到了他的观点,但是在我看来,如果所有与窗口相关的事件侦听器都位于同一位置,则调试/维护会容易得多。
我在网上的最佳做法中找不到很多东西。我发现的最好答案是8年前对此问题的答案:best practice on adding event listeners (javascript, html)
您真的希望能够将所有事件侦听器添加到同一事件中 地点;为什么?仅仅是为了易于维护。
但是8年前是Java语言的一生,并且“在给定文件中,最好将事件侦听器放在同一位置”与“在项目范围内,最好……”之间有很大的区别。 / p>
那么...将事件侦听器放在一起或根据其行为散布是更好吗?谢谢!