使用Webpack将jQuery公开到真实的Window对象

我不会将jQuery对象公开给浏览器中开发人员控制台内部可访问的全局窗口对象。现在在我的webpack配置中,有以下几行:

plugins: [

new webpack.ProvidePlugin({

$: 'jquery',

jQuery: 'jquery'

})

]

这些行将jQuery定义添加到我的webpack模块中的每个文件中。但是,当我构建项目并尝试在开发者控制台中访问jQuery时,如下所示:

window.$;

window.jQuery;

它说这些属性是不确定的…

有没有办法来解决这个问题?

回答:

您需要使用expose-loader.。

npm install expose-loader --save-dev

您可以在需要时执行以下操作:

require("expose?$!jquery");

或者您可以在配置中执行以下操作:

loaders: [

{ test: require.resolve('jquery'), loader: 'expose?jQuery!expose?$' }

]

:从webpack 2开始,您需要使用 而不是 :

module: {

rules: [{

test: require.resolve('jquery'),

use: [{

loader: 'expose-loader',

options: '$'

}]

}]

}

以上是 使用Webpack将jQuery公开到真实的Window对象 的全部内容, 来源链接: utcz.com/qa/413665.html

回到顶部