У меня есть селектор NGXS в SomeService
@Select(state => state.sample)
public sample$: Observable<Sample>;
Я использую его внутри Angular RouteGuard, как это
getSample(): boolean {
this.someService.sample$.subscribe({
next: (sample: Sample) => {
if (isValid(sample)) {
return true;
} else {
return false;
}
},
error: () => {
return false;
}
});
}
canActivate(): boolean {
return this.getSample();
}
Я получаю ошибку 'Функция, объявленный тип не является ни 'void', ни 'any', которое должно возвращать значение '. Я знаю причину, потому что она не вернула ничего за пределами подписки, но я хочу вернуться только после выполнения подписки.