.mjs 扩展名

由于 require() 的同步特性,无法使用它来加载 ECMAScript 模块文件。 尝试这样做会抛出 ERR_REQUIRE_ESM 错误。 改用 import()

.mjs 扩展名是为无法通过 require() 加载的 ECMAScript 模块保留的。 有关哪些文件被解析为 ECMAScript 模块的更多信息,请参阅确定模块系统章节。

Due to the synchronous nature of require(), it is not possible to use it to load ECMAScript module files. Attempting to do so will throw a ERR_REQUIRE_ESM error. Use import() instead.

The .mjs extension is reserved for ECMAScript Modules which cannot be loaded via require(). See Determining module system section for more info regarding which files are parsed as ECMAScript modules.