问题库 JavaScript / TypeScript how-to

ESM 中如何获取当前文件目录

快速答案

ESM 没有 __dirname,需要用 import.meta.url 转成文件路径。

js
import { dirname } from 'node:path';
import { fileURLToPath } from 'node:url';
const __dirname = dirname(fileURLToPath(import.meta.url));

使用要点

  • Node 和 Vite 示例要确认当前运行目录、环境变量前缀和操作系统差异。
  • 脚本写文件、执行命令或读取路径前,先打印一次目标路径便于排查。

相关内容