出现这种问题通常是因为在使用import命令加载ES模块时,文件的扩展名不是.mjs,而是.js。为了解决这个问题,我们需要重命名文件后缀并更改代码。
例如,如果我们有一个名为foo.js的模块,并且我们在另一个模块中使用了import命令来加载它:
// app.js import { someFunc } from './foo.js';
我们可以将foo.js的文件扩展名更改为.cjs,并将app.js中的import语句更改为import()语法:
// foo.cjs export function someFunc() { console.log('Hello world!'); }
// app.js const { someFunc } = await import('./foo.cjs');
这个问题的解决方法是,要么将.js更改为.mjs,要么将文件重命名为.cjs并使用import()语法。