以下 Node.js 选项配置是否填充或模拟某些 Node.js 全局变量。
此功能由 webpack 的内部 NodeStuffPlugin
插件提供。
false
object
webpack.config.js
module.exports = {
//...
node: {
global: false,
__filename: false,
__dirname: false,
},
};
node
选项可以设置为 false
以完全关闭 NodeStuffPlugin
插件。
boolean
'warn'
请参阅 Node.js 文档 以了解此对象的具体行为。
选项
true
:提供填充。false
:不提供任何内容。期望此对象的代码可能会因 ReferenceError
而崩溃。'warn'
:在使用 global
时显示警告。boolean
'mock' | 'warn-mock' | 'node-module' | 'eval-only'
选项
true
:相对于 context
选项 的输入文件的的文件名。false
:Webpack 不会触及您的 __filename
代码,这意味着您拥有常规的 Node.js __filename
行为。在 Node.js 环境中运行时的输出文件的文件名。'mock'
:固定值 '/index.js'
。'warn-mock'
:使用固定值 '/index.js'
但显示警告。'node-module'
:当启用 output.module
时,将 CommonJS 模块中的 __filename
替换为 fileURLToPath(import.meta.url)
。'eval-only'
boolean
'mock' | 'warn-mock' | 'node-module' | 'eval-only'
选项
true
:相对于 context
选项 的输入文件的目录名。false
:Webpack 不会触及您的 __dirname
代码,这意味着您拥有常规的 Node.js __dirname
行为。在 Node.js 环境中运行时的输出文件的目录名。'mock'
:固定值 '/'
。'warn-mock'
:使用固定值 '/'
但显示警告。'node-module'
:当启用 output.module
时,将 CommonJS 模块中的 __dirname
替换为 fileURLToPath(import.meta.url + "/..")
。'eval-only'