Я впервые использую switchMap. Он говорит мне вернуть «что-то», но когда я ставлю возврат, это не работает.
@Effect()
subData$ = this.actions$.pipe(
ofType(ActionTypes.SEARCH_SUB_DATA),
map(action => action['payload']),
switchMap(payload => { //Payload gets highlighted in red
const repos = this.githubSearch.getRepos(payload);
const followers = this.githubSearch.getFollowers(payload);
const starred = this.githubSearch.getStarred(payload);
return forkJoin([repos, followers, starred]).subscribe(results => {
this.store.dispatch(
new UserActions.SuccessSubData({
user: payload,
repos: results[0],
followers: results[1],
starred: results[2]
})
);
return of(results);
});
})
);
Аргумент типа '(полезная нагрузка: никогда) => Подписка' не назначается
к параметру типа '(значение: никогда, индекс: число) =>
ObservableInput <{}>». Тип «Подписка» нельзя назначить типу
'ObservableInput <{}>'.
ОБНОВЛЕНИЕ НА ОСНОВАНИИ ОТВЕТА
@Effect()
subData$ = this.actions$.pipe(
ofType(ActionTypes.SEARCH_SUB_DATA),
map(action => action['payload']),
switchMap(payload => {
return forkJoin(
this.githubSearch.getRepos(payload),
this.githubSearch.getFollowers(payload)
);
}).subscribe(results => {
this.store.dispatch(
new UserActions.SuccessSubData({
user: payload,
repos: results[0],
followers: results[1]
})
);
})
);
Вот изображение, показывающее ошибки
изображение с ошибкой