我有一个reservation.js脚本,其中包含一个向表单输入添加事件监听器的函数。
paymentInstalments.addEventListener('click', ()=> (...))
此功能正在页面加载中通过jquery的$(document).ready()
执行然而,这种方法很麻烦,因为当我尝试加载的页面没有名为“paymentInstalments”的id时,我得到一个TypeError“无法读取属性'addEventListener'的null”。
这显然是因为我试图添加事件监听器的元素在html中不存在。
因此,我的问题是:Webpack不应该足够聪明,能够理解何时执行给定的导入?或者由我来管理脚本的执行时间?
提前多多感谢:)
答案 0 :(得分:0)
如果您在DOM元素实际存在之前尝试与DOM元素进行交互,那么您将遇到此问题。 Webpack无法帮助您。
如果要向元素添加事件侦听器并且无法访问它,请尝试将事件委派给您知道将存在的另一个元素。类似的东西:
objectB