我有一个在许多模块中使用zepto的项目。 如您所知,webpack.ProvidePlugin是处理此场景的最佳方式,使用它,我不需要手动在每个模块中导入zepto。
zepto不会自行导出,因此我无法使用ProvidePlugin导入它。
plugins: [
new webpack.ProvidePlugin({
$: 'zepto'
})
]
我知道有一个名为webpack-zepto的zepto包裹。
但是如果我采用这个解决方案,每次更新zepto时,我都需要自己更新代码。
有没有办法解决我的问题?
答案 0 :(得分:4)
您可以尝试GHC.Generics
:
script-loader
它将读取webpack.config.js
loaders: [
{
test: require.resolve('zepto/zepto.min.js'),
loader: 'script'
}
]
plugins: [
new webpack.ProvidePlugin({
$: 'zepto/zepto.min.js'
})
]
文件并执行它,就像您将其放在脚本标记中一样,然后在您的模块中,您可以通过zepto.min.js
更新:
如果您只想使用window.$
代替$
,则可以通过window.$
和exports-loader
要求zepto.min.js文件:
script-loader