导入类型触发TS1005错误,是否因tsc版本不兼容?
问题根源:TypeScript版本兼容性
没错,这就是TS版本的问题:
import type { CharacterToken, DoctypeToken, ... }这种写法是TypeScript 3.8就支持的类型导入语法,专门用来导入仅作类型用的成员,编译时会被彻底清除。import { type CharacterToken, type DoctypeToken, ... }这种内联类型导入是TS 4.5才新增的特性,允许在普通导入里单独标记某个成员为类型。
你的TS版本肯定低于4.5,所以识别不了内联的type标记,报错很正常。换成import type { ... }能正常运行,说明你的版本满足3.8+但没到4.5。
两种解决办法
- 想保留内联写法?升级TS到4.5及以上就行,执行命令:
npm install typescript@^4.5 --save-dev - 不想升级?那就继续用
import type { ... }的写法,3.8及以上版本都能兼容,完全没问题。
内容的提问来源于stack exchange,提问作者gabric
相关产品推荐
相关产品推荐

