让我说这些:
src / components / Thing / State.ts:
export type State = { name: string }
src / components / Thing / index.ts :
import { State } from './State'
const coolFunction = () => {}
export default {
State,
coolFunction,
}
因为我想说import Thing from '../Thing'
并能够引用Thing.State
和Thing.coolFunction
。
TypeScript告诉我State
是类型而不是值,但是它被用作值。我得到了这个错误的概念,但是我不知道该怎么办。我希望将相关内容命名为命名空间,但这似乎是一个障碍。
我在这里有什么选择?
答案 0 :(得分:1)
您可以使用变量/命名空间合并:
const coolFunction = () => {}
const e = {
coolFunction,
}
namespace e {
export type State = import('./State').State;
}
export default e