我收到一个 webpack 警告 Critical dependency: the request of a dependency is an expression when use koa
I get a webpack warning Critical dependency: the request of a dependency is an expression when use koa
当我启动 webpack 以使用带有服务器端渲染的 koa 捆绑我的 React 应用程序时,我收到警告
WARNING in /app/node_modules/any-promise/register.js 24:14-37
[1] Critical dependency: the request of a dependency is an expression
[1] @ /app/node_modules/any-promise/index.js
[1] @ /app/node_modules/koa-compose/index.js
[1] @ /app/node_modules/koa-convert/index.js
[1] @ /app/node_modules/koa/lib/application.js
[1] @ ./server/index.ts
我应该担心吗?
嗯,我几个小时前在 any-promise
Github 存储库中回答了这个问题。
所以我把答案复制到这里:
发生这种情况是因为 register.js
在 24 行上有一个动态导入:
var lib = require(implementation)
这意味着 webpack 无法静态解析 require 并导入整个包
你可以阅读这部分 webpack 文档:https://webpack.js.org/guides/dependency-management/#require-with-expression
可以使用ContextReplacementPlugin
来解决,例如,你可以在你的webpack中添加"fake"配置来抑制这个警告
plugins: [
new ContextReplacementPlugin(/any-promise/)
]
而且我认为您不必担心,因为 webpack 只需要 "unnecessary" 打包到您的服务器应用程序中。
您也可以跟踪这个问题:https://github.com/kevinbeaty/any-promise/issues/31
当我启动 webpack 以使用带有服务器端渲染的 koa 捆绑我的 React 应用程序时,我收到警告
WARNING in /app/node_modules/any-promise/register.js 24:14-37
[1] Critical dependency: the request of a dependency is an expression
[1] @ /app/node_modules/any-promise/index.js
[1] @ /app/node_modules/koa-compose/index.js
[1] @ /app/node_modules/koa-convert/index.js
[1] @ /app/node_modules/koa/lib/application.js
[1] @ ./server/index.ts
我应该担心吗?
嗯,我几个小时前在 any-promise
Github 存储库中回答了这个问题。
所以我把答案复制到这里:
发生这种情况是因为 register.js
在 24 行上有一个动态导入:
var lib = require(implementation)
这意味着 webpack 无法静态解析 require 并导入整个包
你可以阅读这部分 webpack 文档:https://webpack.js.org/guides/dependency-management/#require-with-expression
可以使用ContextReplacementPlugin
来解决,例如,你可以在你的webpack中添加"fake"配置来抑制这个警告
plugins: [
new ContextReplacementPlugin(/any-promise/)
]
而且我认为您不必担心,因为 webpack 只需要 "unnecessary" 打包到您的服务器应用程序中。
您也可以跟踪这个问题:https://github.com/kevinbeaty/any-promise/issues/31