Javascript Node.js中的es6,使用导入和IntelliSense的Babel

Javascript Node.js中的es6,使用导入和IntelliSense的Babel,javascript,node.js,ecmascript-6,babeljs,commonjs,Javascript,Node.js,Ecmascript 6,Babeljs,Commonjs,在Node.js中使用es6导入功能时,使用commonjs模块格式编写的模块存在问题。我使用babel寄存器来运行代码。 例如,我想使用express模块中的命名导出,并编写: import * as express from "express"; let app = express(); 我还使用打字脚本类型定义,它们是这样工作的。但是这段代码无法运行,因为express()不是函数。 当我编写时,就像使用默认导出一样: import express from "express"; let

在Node.js中使用es6导入功能时,使用commonjs模块格式编写的模块存在问题。我使用babel寄存器来运行代码。 例如,我想使用express模块中的命名导出,并编写:

import * as express from "express";
let app = express();
我还使用打字脚本类型定义,它们是这样工作的。但是这段代码无法运行,因为express()不是函数。 当我编写时,就像使用默认导出一样:

import express from "express";
let app = express();
它可以工作,但IntelliSense不可用


这有什么问题?

您尝试过中的步骤吗?我正在使用Visual Studio代码,但这不是IDE的问题。问题不在于IntelliSense,我认为是Babel。使用导入必须导入所有命名导出,express和许多其他使用commonjs编写的模块就是这种情况。正在导入默认导出。所以正确的方法是第一种,Intellisense可以使用它,但代码可以使用第二种。您尝试过其中的步骤吗?我正在使用Visual Studio代码,但这不是IDE的问题。问题不在于Intellisense,我认为是Babel。使用导入必须导入所有命名导出,express和许多其他使用commonjs编写的模块就是这种情况。正在导入默认导出。所以正确的方法是第一种,Intellisense可以使用它,但是代码可以使用第二种。