Придание типа корневому состоянию
Допустим, я определил два состояния:
Первый в приложении модуль
NgxsModule.forRoot([AppState])
Второй в функциональном модуле
NgxsModule.forFeature([FeatureState])
Согласно Redux Dev Tool, глобальное состояние
{
app: {},
feature: {
animals: []
}
}
Чтобы выбрать срез состояния, я могу использовать декоратор выбора:
@Select(state => state.feature.animals) animals$: Observable<string[]>;
Проблема в том, что переменная состояния не имеет типов: нет проверок типов, нет автозаполнения и т. Д.
Одним из решений является явное приведение выбранного подсостояния:
@Select((state => state.feature as FeatureState).animals) animals$: Observable<string[]>;
Есть ли лучшее решение?