Придание типа корневому состоянию - PullRequest
0 голосов
/ 25 февраля 2019

Допустим, я определил два состояния:

Первое в модуле приложения

NgxsModule.forRoot([AppState])

Второе в функциональном модуле

NgxsModule.forFeature([FeatureState])

Согласно Redux devинструмент, глобальное состояние:

{
  app: {},
  feature: {
    animals: []
  }
}

Чтобы выбрать срез состояния, я могу использовать декоратор выбора:

@Select(state => state.feature.animals) animals$: Observable<string[]>;

Проблема в том, что переменная состояния не имеет типов: нет типапроверки, отсутствие автозаполнения и т. д.

Одно из решений - явное приведение выбранного подсостояния:

@Select((state => state.feature as FeatureState).animals) animals$: Observable<string[]>;

Есть ли лучшее решение?

...