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

相关内容

热门资讯

解迷透视!wepoker游戏下... 解迷透视!wepoker游戏下载,微信小程序游戏破解微乐游戏,练习教程(有挂规律)-哔哩哔哩暗藏猫腻...
详细透视!德普之星辅助工具如何... 详细透视!德普之星辅助工具如何打开,微乐小程序黑科技免费知乎,课程教程(有挂技术)-哔哩哔哩1、许多...
总结透视!wepoker辅助器... 总结透视!wepoker辅助器,微信微乐小程序有窍门吗,秘籍教程(有挂秘籍)-哔哩哔哩1、wepok...
辅助透视!wpk透视是真的假的... 辅助透视!wpk透视是真的假的,微乐自建房脚本最新版本更新内容,指引教程(有挂功能)-哔哩哔哩1、w...
解谜透视!德州局透视脚本下载安... 解谜透视!德州局透视脚本下载安装最新版本,微乐小程序黑科技app入口,模块教程(有挂秘笈)-哔哩哔哩...
解密透视!hhpoker作弊实... 解密透视!hhpoker作弊实战视频,微乐老友广东辅助器,手筋教程(详细教程)-哔哩哔哩1、让任何用...
普及透视!poker辅助器免费... 普及透视!poker辅助器免费安装,微乐自建房免费脚本哪个最好用,秘籍教程(有挂头条)-哔哩哔哩1、...
揭露透视!aapoker公共底... 揭露透视!aapoker公共底牌,微乐春天小程序辅助,操作教程(证实有挂)-哔哩哔哩1、每一步都需要...
详细透视!aapoker怎么拿... 详细透视!aapoker怎么拿好牌,收集微乐小程序游戏破解器,讲义教程(有挂细节)-哔哩哔哩1、aa...
揭幕透视!wepoker脚本,... 揭幕透视!wepoker脚本,微信小程序游戏充值破解,模板教程(有挂秘籍)-哔哩哔哩1、wepoke...