Webpack引入jquery及其插件的几种方法
在做项目的时候,难免会用到jquery
,所以还是整理出来,供以后参考。
ProvidePlugin
[难以引入插件]
在webpack.base.conf.js
中,加入以下代码:
const webpack = require('webpack');
在module
下,加入以下代码:
// 增加一个plugins
plugins: [
new webpack.ProvidePlugin({
$: "jquery",
jQuery: "jquery"
})
]
expose-loader
[推荐使用]
npm i expose-loader --save
不需要任何其他的插件配合,只要将下面的代码添加到所有的loader之前
webpack v1:
module: {
loaders: [
{ test: require.resolve("jquery"), loader: "expose-loader?$!expose-loader?jQuery" },
]
}
webpack v2:
module: {
rules: [{
test: require.resolve('jquery'),
use: [{
loader: 'expose-loader',
options: 'jQuery'
},{
loader: 'expose-loader',
options: '$'
}]
}]
}
最后,去想引入插件的页面加入如下代码:
require("expose-loader?jQuery!expose-loader?$");
包装jquery
[推荐使用]
此方法只依赖于自己,完全不需要任何其他插件与加载器,创建jquery
的包装对象jquery-vendor.js
import $ from 'jquery'
window.$ = $
window.jQuery = $
export default $
以后引用jquery
时指向jquery-vendor.js
import $ from '../assets/jquery-vendor.js'