当我写打字稿时:
我有此代码:
import * as express from 'express'
系统给我一个错误:
Type originates at this import. A namespace-style import cannot be called or constructed, and will cause a failure at runtime. Consider using a default import or import require here instead.
因此,我更改为:
import express from 'express'
它们之间有什么区别,为什么第一种方法不能调用或构造?
答案 0 :(得分:6)
它们之间有什么区别
* as express
将导入模块的整个内容express
将仅导入默认导出为什么第一种方法无法调用或构造?
根据ES规范,模块本身不可调用。因此,您将无法执行express()
,即函数调用。因此,它必须映射到模块的成员,在本例中为default
导出成员