问题标签 [ngrx-effects]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ngrx - 是否可以同时调度一系列动作并从ngrx效果导航?
我的应用程序的其中一个 ngrx 效果有问题。我基本上是在尝试使用concatMap()
并使用路由器商店的go()
.
这是效果:
如果我删除.mapTo(go(['/dashboard']))
,那么concatMap
数组中的所有三个动作都会成功地分派到它们相应的效果。
因此,我想知道为什么 mymapTo(go(...
导致数组中的最后两个动作(即SigninAction
& LoadMessagesAction
)没有被分派到它们相应的效果..
有人可以帮忙吗?
编辑:更改mapTo
为do
如下:
导致以下错误:
redux - Is it correct use lodash inside a pure function to map an input value?
Is it okay to use lodash inside a pure function to _.map
an input value or can I only use the native Array.map
which is slower?
For example:
#xA;javascript - NGRX 处理获取/创建/删除错误
我有一个减速器,它当前存储状态为product
. 我有当前的状态结构:
我的问题是当用户创建/删除产品时如何支持处理错误?我不想使用相同的loading
/error
属性来获取 / 创建 / 删除 - 它们可能需要同时发生。我最好创建单独的减速器,例如createProductReducer
// ,或者可能将错误/加载到他们自己的deleteProductReducer
/ 'loadingReducer`中?getProductReducer
errorReducer
angular - NGRX / 角度 / Firebase
我正在尝试让一个应用程序与 ngrx 存储/效果以及角度和火力一起工作。
我无法理解为什么从服务中提取数据时它不起作用但直接从 Firebase 中提取数据时它确实起作用。我在效果类中只更改了一行。
我知道对 Firebase 的服务调用确实有效,因为我直接在组件中调用它并在页面上显示数据。
但是,当我尝试在 NGRX Effect 中使用相同的服务时,它在调用服务时不起作用,我必须使用 AngularFire2 调用 Firebase。
下面的代码:
不工作
在职的
服务
angular - 在 Angular 的区域之外运行 ngrx/effect 以防止 Protractor 超时
我刚刚开始为我的应用程序编写 e2e 测试,并且遇到了 Protractor 和 ngrx/effects 的超时问题。
我有以下效果每几分钟调度一个动作:
尝试运行量角器测试会导致测试超时并出现以下错误,因为 Angular 不稳定。
失败:等待异步 Angular 任务在 11 秒后完成超时。这可能是因为当前页面不是 Angular 应用程序。有关更多详细信息,请参阅常见问题解答: https ://github.com/angular/protractor/blob/master/docs/timeouts.md#waiting-for-angular 在等待带有定位器的元素时 - 定位器:By(css 选择器,.工具栏标题)
根据这个问题(https://github.com/angular/protractor/issues/3349),我需要使用 NgZone 在 Angular 之外运行一个区间 Observable。我尝试了不同的组合,this.ngZone.runOutsideAngular()
但没有任何效果,并且测试不断超时。
例如,这不起作用:
我不知道如何在 Angular 之外运行效果。有没有人成功地 e2e 测试了他们的 ngrx 应用程序?
angular - 关于正确使用ngrx/effects的“副作用”概念的设计审讯
我写这篇文章是为了知道我是否做对了。
在网上找到的例子中,模式通常是这样的(这里的例子是在状态和远程数据库上添加/删除操作):
效果.ts:
减速器.ts
它可以工作,但用户感受到的执行速度取决于网络的速度。因此,我想出了一个模式,押注 API 不会返回错误的概率很高:
减速器.ts
效果.ts:
在这种模式下,保存到数据库的动作确实是一个“副作用”。在 API 返回错误的不太可能但可能的情况下,将采取第二个操作来撤消第一个操作。
但是我还没有在网上给出的例子中找到这个设计:因为我是一个业余开发者,我想知道我是否错过了一些最终使它出错/危险/低效的东西。
ngrx - 在这个@ngrx 示例中,谁订阅了 loadCollection$ 效果?
我不明白谁订阅了这个效果,以及这个@ngrx示例loadCollection$
中这个 observable 是如何开始的。有人可以解释吗?
ngrx - 这个@ngrx 示例中的mergeMap 有什么好处?
以下示例取自@ngrx 示例。
我这样理解这个可观察的。第一个map
函数得到payload
要添加的书,再次由mergeMap
它保存到数据库的位置处理。
原始代码:
下面的代码可以做和上面一样的事情吗?为什么有一个mergeMap
必填项?
修改代码:
angular - Angular ngrx/store 如何添加将跳过操作的中间件
我试图弄清楚如何创建一个中间件,该中间件将检查动作中的属性,并据此决定是否放弃动作。
在简单的 redux 中,我会这样做:
如何使用 ngrx/store 做到这一点?