關於解決 [Webpack] Critical dependency: the request of a dependency is an expression

-------------------------------------------------------------------------------------------------
就遇到的情況和查閱相關資料來看,這個問題一般出現在 編譯用於node環境時:
module.exports = { target: 'node', ... }
使用 target: 'node' 意為加載核心模塊時,不打包📦 node_modules 里面的模塊。
但實際上光靠target指定為node是不夠的,還需要借助一項外部配置 webpack-node-externals, 它可以幫助我們在打包時忽略 node_modules ~
如何使用:
1. 安裝(-S/-D都可,看個人情況)
npm i webpack-node-externals
// or
yarn add webpack-node-externals
2. 使用
const nodeExternals = require('webpack-node-externals')
const config = function() {
return {
...
externals: [
nodeExternals()
],
...
}
}
module.exports = config
end
