Webpack - 模块何时加载?

tmcrs123

我有一个reservation.js 脚本,其中包含将事件侦听器添加到表单输入的函数。

paymentInstalments.addEventListener('click', ()=> (...))

这个函数是在页面加载通过 jquery 的 $(document).ready() 时执行的

然而,这种方法被证明很麻烦,因为当我尝试加载的页面没有名为“paymentInstalments”的 id 时,我会收到 TypeError“无法读取 null 的属性 'addEventListener'”。

发生这种情况显然是因为我尝试添加事件侦听器的元素在 html 中不存在。

因此,我的问题是:Webpack 不应该足够聪明以了解何时执行给定的导入吗?还是由我来管理脚本何时执行?

非常感谢提前:)

杰克威斯

如果您尝试在 DOM 元素实际存在于 DOM 之前与其交互,您将遇到此问题。Webpack 帮不了你。

如果您想向元素添加事件侦听器并且在访问它时遇到问题,请尝试将该事件委托给您知道将存在的另一个元素。就像是:

$('body').on('click', #paymentInstalments', function(e) {
    // do stuff
});

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章