AngularNgrx-在dispatch操作时,Effects没有被调用。
创始人
2024-10-28 17:01:19
0

这可能是由于在dispatch前未注入Effect源或在提供程序中未正确声明导致的。以下是一个示例:

在您的模块中引入Effects和Store模块:

import { EffectsModule } from '@ngrx/effects'; import { StoreModule } from '@ngrx/store';

@NgModule({ imports: [ StoreModule.forRoot({}), EffectsModule.forRoot([]), ... ], ... })

在您的组件或服务文件中,创建一个action并使用dispatch将其发送到store:

import { MyAction } from '../store/my-action.actions'; import { Store } from '@ngrx/store';

constructor(private store: Store) {}

triggerAction() { this.store.dispatch(new MyAction()); }

在您的Effect中,监听您的Action并执行所需的操作:

import { Injectable } from '@angular/core'; import { Actions, Effect, ofType } from '@ngrx/effects'; import { MyAction } from '../store/my-action.actions'; import { tap } from 'rxjs/operators';

@Injectable() export class MyEffect { @Effect({dispatch: false}) myAction$ = this.actions$.pipe( ofType(MyAction), tap(() => console.log('MyAction was dispatched!')) );

constructor(private actions$: Actions) {}

}

确认在提供程序中正确声明effect:

import { EffectsModule } from '@ngrx/effects'; import { MyEffect } from './my-effect.effects';

@NgModule({ imports: [ ... EffectsModule.forFeature([MyEffect]), ... ], declarations: [...], providers: [ MyEffect, ... ] })

这些步骤应该能够使Effects在dispatch操作时被正确调用。

相关内容

热门资讯

重要通知!aapoker如何设... 重要通知!aapoker如何设置胜率,wejoker内置辅助,确实是有挂(有挂存在)1、玩家可以在线...
玩家实测!wejoker辅助软... 玩家实测!wejoker辅助软件视频,如何下载wepoker安装包,其实存在有挂(有挂讲解)破解侠是...
必备攻略!微扑克辅助下载,wp... 必备攻略!微扑克辅助下载,wpk辅助哪里买,好像真的是有挂(果真有挂)1、用户打开应用后不用登录就可...
程序员教你!pokemmo手机... 程序员教你!pokemmo手机脚本辅助器,we-poker是什么软件,都是真的是有挂(讲解有挂)1、...
推荐一款!wepoker怎么开... 推荐一款!wepoker怎么开辅助,wepoker有辅助功能吗,一直有挂(新版有挂)在进入软件靠谱后...
科普!wepoker透视脚本免... 科普!wepoker透视脚本免费app,hhpoker是正规的吗,都是是有挂(存在有挂)1)辅助插件...
终于知道!wepoker可以开... 终于知道!wepoker可以开透视吗,德普辅助器怎么用,一直存在有挂(真实有挂)透视方法中分为三种模...
分享实测!we-poker正规... 分享实测!we-poker正规吗,pokernow辅助控制,真是存在有挂(有挂透明挂)1、辅助软件下...
我来教大家!xpoker怎么作... 我来教大家!xpoker怎么作弊,hhpoker可以开挂吗,果然有挂(有挂解密)1、首先打开辅助器下...
大神推荐!wepoker作弊视... 您好,这款游戏可以开挂的,确实是有挂的,需要了解加去威信【136704302】很多玩家在这款游戏中打...