【发布时间】:2020-09-10 09:45:14
【问题描述】:
我想要一个可以全局访问的接口(在单独的文件中定义),我该怎么做?
这是我的globals.d.ts 文件
import { Theme, Style } from './style/themes/theme.types'
declare global {
Theme
Style
}
这给了我一个错误
Statements are not allowed in ambient contexts.ts(1036)
'Theme' only refers to a type, but is being used as a value here.ts(2693)
【问题讨论】:
-
有一些 hacky 解决方案,例如在别名下导入,然后声明全局类型别名
import { Theme as TM } from './style/themes/theme.types'; declare global { type Theme = TM; },但这很尴尬,与您所描述的不完全一样。你为什么做这个?用例是什么?这似乎很可疑。 -
很怀疑,我认为在类型定义文件中定义类型比尝试导入它们更好
-
你很困惑。该文件是
.d.ts还是.ts与您是否导入它们无关。如果我能理解它,我会回答你的问题。 -
是的,我认为我的问题没有意义,我会在有时间的时候发布解决问题的方法。
标签: typescript interface export