本文介绍了节点找不到没有.js扩展名的模块的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个文件-test.js,其中包含以下几行代码:

import {blabla} from "./bla";

async function dataGenerator() {
..........
}

(async() => {
  console.log('1')
  await dataGenerator()
  console.log('2')
})()

当我尝试使用";节点test.js";从终端运行时,返回错误:

我已将行:";type";:";MODULE";添加到Package中。如果不这样做,它将返回:

我正在使用节点14。

如何才能在不添加所有导入的情况下运行test.js。函数中有函数,函数中有函数,添加.js扩展名比较复杂。有运行它的NPM吗?

谢谢!

推荐答案

默认情况下,使用ES模块的import时,Node.js不会尝试猜测文件扩展名。这与require的CommonJS模块不同。

documentation for the ES module loader中,您可以阅读如何在磁盘上找到文件。

标题‘定制ESM说明符解析算法’说明:

这篇关于节点找不到没有.js扩展名的模块的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-21 06:51