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操作时被正确调用。

相关内容

热门资讯

最新技巧!德普之星透视,new... 最新技巧!德普之星透视,newpoker脚本,真是有挂(有挂方略)1、脚本辅助下载、免费透视脚本等服...
值得注意的是!wepoker轻... 值得注意的是!wepoker轻量版透视系统,德普之星透视辅助软件激活码,切实确实有挂(有挂讲解)1、...
2分钟细说!wepoker免费... 2分钟细说!wepoker免费钻石,wepoker怎么破解游戏,总是是真的有挂(了解有挂)1、操作简...
插件辅助挂!hhpoker脚本... 插件辅助挂!hhpoker脚本,德普之星透视辅助软件是真的吗,原来存在有挂(今日头条)1、超多福利:...
我来教教大家!hhpoker到... 我来教教大家!hhpoker到底可以作弊码,德普之星透视辅助插件,其实是真的有挂(有挂实锤)1、有没...
值得注意的是!智星德州插件,德... 值得注意的是!智星德州插件,德普辅助器怎么用,其实真的是有挂(揭秘有挂)1、德普辅助器怎么用有没有辅...
记者揭秘!hhpoker的辅助... 记者揭秘!hhpoker的辅助是真的吗,sohoo开挂辅助,竟然有挂(有挂秘诀)1、首先打开辅助器下...
为切实保障!wepoker买钻... 为切实保障!wepoker买钻石有用吗,德扑之星有辅助软件吗,都是是有挂(揭秘有挂)德扑之星有辅助软...
目前!pokerworld修改... 目前!pokerworld修改器,德普之星透视辅助,本来存在有挂(有挂教学)1、在德普之星透视辅助插...
三分钟了解!wepoker怎么... 三分钟了解!wepoker怎么设置房间,wepoker脚本下载,都是是真的有挂(有挂实锤)1、很好的...