Неопределенное перечисление TypeScript во время компиляции - PullRequest
0 голосов
/ 22 января 2019

У меня есть перечисление, определенное в 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 не определен во время ссылки.Но я экспортирую его из модуля и импортирую перед тем, как его использовать ... так что он должен быть определен.

Я обнаружил, что другие подобные вопросы спрашивают о неопределенных перечислениях, но, похоже, все они спрашиваюто времени выполнения.Насколько я могу судить, это проблема времени компиляции.

Я не понимаю, что бы я делал здесь неправильно.Я импортирую другие типы в других местах без проблем.Но это перечисление просто не хочет работать.Что здесь происходит и как я могу обойти это?

1 Ответ

0 голосов
/ 22 января 2019

Ну, это не способ заставить это работать, но этот GitHub PR объясняет, что ts-jest не будет поддерживать перечисления, которые работают так. Я изменил все варианты использования (например,) ("both" as Handedness), и это работает. Так что это не объяснение, это обходной путь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...