Angular ngrx@effect基础问题:类型'Observable<void>'不能赋值给类型
创始人
2024-10-20 09:01:04
0

在Angular中使用ngrx/effects时,常见的错误之一是出现类型错误,特别是涉及到将类型'Observable'分配给其他类型的情况。这通常是由于未正确使用rxjs操作符或effect的操作符导致的。

以下是一些解决方法和示例代码:

  1. 检查您是否正确导入了所需的rxjs操作符。 例如,如果您使用了switchMap操作符,确保您已经在文件顶部导入了import { switchMap } from 'rxjs/operators';

  2. 确保您在effect的操作符链中使用了正确的操作符。 例如,如果您想要使用map操作符来转换一个observable的值,确保您在操作符链中使用了map操作符,而不是错误的操作符。

以下是一个错误的示例:

import { mapTo } from 'rxjs/operators';

...

@Effect()
myEffect$: Observable = this.actions$.pipe(
  ofType(MyActionTypes.SomeAction),
  switchMap(() => {
    return this.myService.someMethod().pipe(
      mapTo({ type: MyActionTypes.AnotherAction }) // 错误的操作符
    );
  })
);

以下是正确的示例:

import { map } from 'rxjs/operators';

...

@Effect()
myEffect$: Observable = this.actions$.pipe(
  ofType(MyActionTypes.SomeAction),
  switchMap(() => {
    return this.myService.someMethod().pipe(
      map(() => ({ type: MyActionTypes.AnotherAction })) // 正确的操作符
    )
  })
);

注意,这里使用的是map操作符而不是mapTo操作符,因为我们想要转换observable的值而不是返回一个常量。

通过检查和正确使用rxjs操作符,您应该能够解决这个类型错误。

相关内容

热门资讯

透视总结!pokemmo手机脚... 透视总结!pokemmo手机脚本,德州局透视-竟然是真的有辅助方法(哔哩哔哩)1、实时pokemmo...
透视开挂!wpk插件,wpk模... 透视开挂!wpk插件,wpk模拟器是什么-其实真的是有辅助插件(哔哩哔哩)1、有没有辅助教程、有透视...
透视揭幕!wpk软件是真的吗,... 您好,这款游戏可以开挂的,确实是有挂的,需要了解加去威信【485275054】很多玩家在这款游戏中打...
透视辅助!云扑克有透视吗,拱趴... 透视辅助!云扑克有透视吗,拱趴大菠萝万能辅助器-原来是真的有辅助软件(哔哩哔哩)一、拱趴大菠萝万能辅...
透视曝光!wepoker辅助真... 透视曝光!wepoker辅助真的假的,wepoker辅助软件视频-确实一直都是有辅助工具(哔哩哔哩)...
透视详情!aapoker插件下... 透视详情!aapoker插件下载,aapoker辅助软件合法吗-果然一直总是有辅助插件(哔哩哔哩)1...
透视揭幕!wpk作弊,wpk透... 透视揭幕!wpk作弊,wpk透视辅助靠谱吗-确实是真的有辅助app(哔哩哔哩)所有人都在同一条线上,...
透视开挂!wpk作弊最怕三个东... 透视开挂!wpk作弊最怕三个东西,wpk私人局有透视吗-都是是有辅助软件(哔哩哔哩)1、起透看视 辅...
透视分享!wepoker有辅助... 透视分享!wepoker有辅助功能吗,we-poker是什么软件-确实是有辅助app(哔哩哔哩)1、...
透视解迷!WePOker有没有... 透视解迷!WePOker有没有透视方法,wepoker有人用过吗-其实真的有辅助软件(哔哩哔哩)1、...