【发布时间】:2019-10-02 20:38:06
【问题描述】:
在一个 NodeJS 项目中,我安装了typescript 3.2、express 4.16 和@types/express 4.16
我正在使用 Typescript 编写我的应用程序,以便稍后进行转换。 @types/express 的文档说要以这种方式导入和使用:
import * as express from "express";
const app = express();
但是,当我这样做时,第二行会引发错误,因为 express 不是函数(没有调用签名)。当我控制台记录express 时,我得到一个具有application 属性的对象
另一方面,如果我以这种方式导入和使用:
import express = require('express');
const app = express();
然后一切正常,控制台日志express 显示一个名为createApplication 或类似的函数。该函数本身似乎具有与第一种方法相同的application 属性。
有什么区别?
【问题讨论】:
标签: node.js typescript express node-modules require