以下 Node.js 选项配置是否对某些 Node.js 全局变量 进行 polyfill 或模拟。
此功能由 webpack 内部的 NodeStuffPlugin 插件提供。
false object
webpack.config.js
module.exports = {
//...
node: {
global: false,
__filename: false,
__dirname: false,
},
};
node 选项可以设置为 false,以完全关闭 NodeStuffPlugin 插件。
boolean 'warn'
请参阅 Node.js 文档 以了解此对象的具体行为。
选项
true:提供 polyfill。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'