使用ASP.NET Core和Webpack创建一个新的Web项目时,我会收到关于 extract-text-webpack-plugin
的纱线依赖性警告 .
我重现的步骤:
-
dotnew new web
-
yarn init
-
yarn add --dev webpack webpack-cli
-
webpack init
将显示以下警告消息:
warning“> extract-text-webpack-plugin@3.0.2”具有错误的对等依赖“webpack@^3.1.0” .
webpack
显示以下错误消息:
(node:19320)DeprecationWarning:不推荐使用Tapable.plugin . 在'.hooks'上使用新的API而不是D:\ SRC \ MISC \ WebpackTest \ node_modules \ webpack \ lib \ Chunk.js:460抛出新错误(^错误:Chunk.entrypoints:使用Chunks.groupsIterable并通过instanceof Entrypoint过滤在Chunk.get(D:\ SRC \ MISC \ WebpackTest \ node_modules \ webpack \ lib \ Chunk.js:460:9)的D:\ SRC \ MISC \ WebpackTest \ node_modules \ extract-text-webpack-plugin \ dist \ index.js:176:48在Array.forEach()的D:\ SRC \ MISC \ WebpackTest \ node_modules \ extract-text-webpack-plugin \ dist \ index.js:171:18 at AsyncSeriesHook.eval [as callAsync] (eval at create(D:\ SRC \ MISC \ WebpackTest \ node_modules \ tapable \ lib \ HookCodeFactory.js:24:12),:7:1)在AsyncSeriesHook.lazyCompileHook [as _callAsync](D:\ SRC \ MISC \ WebpackTest \ node_modules \ tapable \ lib \ Hook.js:35:21)在hooks.make.callAsync上的Compilation.seal(D:\ SRC \ MISC \ WebpackTest \ node_modules \ webpack \ lib \ Compilation.js:881:27) .err(D:\ SRC \ MISC \ WebpackTest \ node_modules \ webpack \ lib \ Compiler.js:464:17)位于_err0(创建时为eval(D:\ SRC \ MISC \ WebpackTest \ node_modules \ tapabl) e \ lib \ HookCodeFactory.js:24:12),:11:1)在processModuleDependencies.err(D)处的_addModuleChain(D:\ SRC \ MISC \ WebpackTest \ node_modules \ webpack \ lib \ Compilation.js:749:12) :\ SRC \ MISC \ WebpackTest \ node_modules \ webpack \ lib \ Compilation.js:688:9)at process._tickCallback(internal / process / next_tick.js:150:11)
当前版本的webpack纱线正在拉下来:
"devDependencies": {
"webpack": "^4.1.1",
"webpack-cli": "^2.0.10"
},
我知道 extract-text-webpack-plugin
还不支持Webpack 4所以我很好奇为什么 webpack init
试图包含它 . 有没有替代 extract-text-webpack-plugin
或者是回滚到Webpack 3的唯一解决方法?
3 回答
在使用
webpack-cli
提升an issue之后,此pull request已解决此错误引用 .该修复程序已将程序包依赖项更新为
extract-text-webpack-plugin@next
并在本地测试了此项,我可以确认这不再在构建时引发错误 .我使用
npm
遇到了同样的问题,它与纱线解决方案类似地解决了:Ref
Altough的作者说:
Ref
你可以使用mini-css-extract-plugin,我相信它应该替换webpack 4的extract-text-webpack-plugin . https://www.npmjs.com/package/mini-css-extract-plugin
但要注意一些问题,比如在 Watch 模式下破坏增量css重建,因为它现在只是一个测试版 .