我在Angular4工作,我正在使用Webpack设置来构建应用程序。我想在我的项目中使用jQuery,所以我搜索了它,发现了Webpack为全局加载模块提供的ProviderPlugin
。
但是,我面临的问题有点奇怪;第一次页面加载页面工作正常,所有与jQuery相关的代码工作正常,但当我更改页面或路由时,jQuery失去其功能,后续页面无法按预期工作。我错过了什么,我用于插件的代码是标准的
new webpack.ProvidePlugin({
$: 'jquery',
jQuery: 'jquery'
})
我正在寻找其他解决方案,如果还有其他方法可以做,那么请提一下这将是一个很大的帮助。
非常感谢。
您还可以使用将创建html页面的HtmlWebpackPlugin。并设置inject:true。因为您可能发出的问题是当您尝试访问另一个页面时未声明jquery,因此您需要一个具有jquery的主模板页面,并从该模板创建下一个html页面。示例:
new HtmlWebpackPlugin({
filename: 'index.html',
template: 'index.html',
inject: true
})
所以在npm下载软件包,配置,安装然后设置。
您还可以使用以下命令编辑jquery插入:
new webpack.ProvidePlugin({
$: 'jquery',
jquery: 'jquery',
'window.jQuery': 'jquery',
jQuery: 'jquery'
})