【发布时间】:2019-01-23 06:31:30
【问题描述】:
我在types.ts 中定义了一个枚举:
export enum Handedness {
Left,
Right,
Both,
}
export type State = {
count: number
handedness: Handedness
}
我在state.ts 中有一个对象正在初始化:
import { State, Handedness } from './types'
export const initial: State = {
count: 0,
handedness: Handedness.Both
}
当我为这个项目运行测试(通过jest)时,state.ts 生成错误TypeError: Cannot read property 'Both' of undefined,告诉我Handedness 在被引用时没有定义。但是我从它的模块中导出它并在我使用它之前导入它......所以它应该被定义。
我发现其他类似的问题询问未定义的枚举,但它们似乎都在询问运行时。据我所知,这是一个编译时问题。
我看不出我在这里会做错什么。我在其他地方导入其他类型没有问题。但是这个枚举根本不想工作。这是怎么回事,我该如何解决?
【问题讨论】:
-
我猜这是问题中的拼写错误,但您的
State类型中有okay属性,然后在您的实例initial中将其称为handedness。跨度>
标签: typescript jestjs