【发布时间】:2020-08-06 02:19:05
【问题描述】:
在将 webpack 4/storybook 5 项目升级到 webpack 5 以希望利用联合模块的过程中。我有常规的webpack --config webpack.config.js 建设工作,但我似乎无法克服这个故事书配置问题来使其正常工作。故事书 webpack.config.js 中没有太多内容 - 只是一些用于测试较少文件和使用适当加载器的模块规则。在升级 webpack 专业时,我遇到的错误似乎很典型,因为我发现很多人从 3-4 遇到同样的事情,但到目前为止我尝试过的任何事情都失败了。具体的stacktrace是:
Cannot read property 'tapAsync' of undefined
at ExternalModuleFactoryPlugin.apply (/Users/tbullard/Workspace/unify/node_modules/webpack/lib/ExternalModuleFactoryPlugin.js:29:39)
at compiler.hooks.compile.tap (/Users/tbullard/Workspace/unify/node_modules/webpack/lib/ExternalsPlugin.js:24:63)
at SyncHook.eval [as call] (eval at create (/Users/tbullard/Workspace/unify/node_modules/tapable/lib/HookCodeFactory.js:19:10), <anonymous>:7:1)
at SyncHook.lazyCompileHook (/Users/tbullard/Workspace/unify/node_modules/tapable/lib/Hook.js:154:20)
at hooks.beforeCompile.callAsync.err (/Users/tbullard/Workspace/unify/node_modules/@storybook/core/node_modules/webpack/lib/Compiler.js:665:23)
at _err0 (eval at create (/Users/tbullard/Workspace/unify/node_modules/tapable/lib/HookCodeFactory.js:33:10), <anonymous>:11:1)
at compiler.inputFileSystem.readFile (/Users/tbullard/Workspace/unify/node_modules/@storybook/core/node_modules/webpack/lib/DllReferencePlugin.js:72:15)
at process.nextTick (/Users/tbullard/Workspace/unify/node_modules/@storybook/core/node_modules/enhanced-resolve/lib/CachedInputFileSystem.js:85:15)
at process._tickCallback (internal/process/next_tick.js:61:11)
让我相信存在插件不兼容 ????????♂️ TIA!
【问题讨论】:
-
Storybook 是一个完全独立的解决方案,不要手动更新其依赖项,只需更新 it。 (现在,查看它的配置,因为它是开源的,我鼓励你也这样做,它使用 webpack 4,而不是 5。请记住:在semver 中,主要版本更改意味着它向后不兼容并且 会破坏事物)