首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >ngrx效果使类型“void”不能赋值给类型“ObservableInput”

ngrx效果使类型“void”不能赋值给类型“ObservableInput”
EN

Stack Overflow用户
提问于 2017-06-15 13:47:26
回答 1查看 9.5K关注 0票数 3
代码语言:javascript
复制
@Injectable()
export class ApiSearchEffects {

  @Effect()
  search$: Observable<any>
    = this.actions$
    .ofType(query.ActionTypes.QUERYSERVER)
    .debounceTime(300)
    .map((action: query.QueryServerAction) => action.payload)
    .switchMap(payload => {
      console.log(payload);
      const nextSearch$ = this.actions$.ofType(query.ActionTypes.QUERYSERVER).skip(1);

      this.searchService.getsearchresults(payload)
        .takeUntil(nextSearch$)
        .map((response) =>
          ({type: '[Search] Change', payload: response}
          ))
    });

上面的代码给了我类型为'(payload: any) => void‘的参数,但不能将其赋给类型为'(value: any,index: number) => ObservableInput’的参数。类型'void‘不可赋值给类型'ObservableInput’。错误可能出在哪里。我在https://github.com/ngrx/effects/blob/master/docs/intro.md上关注了ngrx效果的官方介绍。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-06-15 15:03:53

问题是你的switchMap应该返回一个值;它返回的是你所拥有的空值。

尝尝这个

代码语言:javascript
复制
  return this.searchService.getsearchresults(payload)
        .takeUntil(nextSearch$)
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44559480

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档