首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >@ngrx/effects调度操作

@ngrx/effects调度操作
EN

Stack Overflow用户
提问于 2020-04-27 18:50:29
回答 1查看 322关注 0票数 0

我是ngrx/store和effects的新手,所以我仍然不了解分派操作的流程:

  1. 动作->效应->减速器->存储
  2. 动作->减速器->效果->减速器->存储

我的问题是,当我调用store.select()时,我发现这个动作被发送了两次,这就是我所做的测试:

减速器函数

代码语言:javascript
复制
switch (action.type) { 
  ...
  default: { 
    console.log('In reducer function'); 
    return state; 
  }
}

效果类构造函数

代码语言:javascript
复制
constructor( private action$: Actions ) { 
  console.log('in effect constructor'); 
}

和我在控制台里得到的

代码语言:javascript
复制
In reducer function
in effect constructor
In reducer function
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-28 18:21:28

尝试登录还原器,不仅是一条消息,而且是action.type,然后您可以看到它有两个不同的操作:store initeffects init

当您分派一个action时,它首先发送给effects,然后发送到reducerreducer可以更新相关的state

通常,人们分派一个负载动作,它在一个效果中被处理,影响加载数据并返回一个带有有效载荷的成功动作,然后还原器接收成功动作并将有效载荷设置为它的状态。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61466232

复制
相关文章

相似问题

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