webpack.ProvidePlugin与zepto
我有一个在很多模块中使用ZepO的项目。 正如您所知,webpack.ProvidePlugin是处理此场景的最佳方法,使用它,我不需要在每个模块中手动导入zepto zepto本身不导出,因此我无法使用ProvidePlugin导入它webpack.ProvidePlugin与zepto,webpack,Webpack,我有一个在很多模块中使用ZepO的项目。 正如您所知,webpack.ProvidePlugin是处理此场景的最佳方法,使用它,我不需要在每个模块中手动导入zepto zepto本身不导出,因此我无法使用ProvidePlugin导入它 plugins: [ new webpack.ProvidePlugin({ $: 'zepto' }) ] 我知道有一种叫做zepto的包装 但是如果我采用这个解决方案,每次zepto更新时,我都需要自己更新代码 有什么方法
plugins: [
new webpack.ProvidePlugin({
$: 'zepto'
})
]
我知道有一种叫做zepto的包装
但是如果我采用这个解决方案,每次zepto更新时,我都需要自己更新代码
有什么方法可以解决我的问题吗?您可以尝试
脚本加载程序:
webpack.config.js
loaders: [
{
test: require.resolve('zepto/zepto.min.js'),
loader: 'script'
}
]
plugins: [
new webpack.ProvidePlugin({
$: 'zepto/zepto.min.js'
})
]
webpack.config.js
loaders: [
{
test: require.resolve('zepto/zepto.min.js'),
loader: 'exports?window.$!script'
}
]
plugins: [
new webpack.ProvidePlugin({
$: 'zepto/zepto.min.js'
})
]
它将读取并执行zepto.min.js
文件,就像您将其放入脚本标记中一样,然后在模块中,您可以通过窗口访问zepto。$
更新:
如果您只是想使用$
而不是窗口。$
,您可以通过导出加载程序和脚本加载程序
要求zepto.min.js文件:
webpack.config.js
loaders: [
{
test: require.resolve('zepto/zepto.min.js'),
loader: 'script'
}
]
plugins: [
new webpack.ProvidePlugin({
$: 'zepto/zepto.min.js'
})
]
webpack.config.js
loaders: [
{
test: require.resolve('zepto/zepto.min.js'),
loader: 'exports?window.$!script'
}
]
plugins: [
new webpack.ProvidePlugin({
$: 'zepto/zepto.min.js'
})
]