小编典典

使用 ES6 模块时 Node.js 中 __dirname 的替代方案

all

--experimental-modules为了使用 ES6 模块,我在运行我的 Node 应用程序时使用了这个标志。

但是,当我使用此标志时,元变量__dirname不可用。是否有另一种方法来获取__dirname与此模式兼容的存储在其中的相同字符串?


阅读 239

收藏
2022-07-07

共1个答案

小编典典

从 Node.js 10.12 开始,有一种替代方法不需要创建多个文件并跨平台处理文件名中的特殊字符:

import { dirname } from 'path';
import { fileURLToPath } from 'url';

const __dirname = dirname(fileURLToPath(import.meta.url));
2022-07-07