ngrx相关内容

更新 ngrx/store 中的对象

我将 @ngrx/store 用于 Angular 2 应用程序. 我的商店有一个列表,比如 Book 对象.我想更新这些对象之一中的字段.我也碰巧有一个我想要更新的 Book 实例的 Observable(比如,selectedBook). 为了进行更新,我打算使用 UpdateBookAction 和新书的有效负载调用减速器.因此,我通过订阅 selectedBook 然后调用 O ..
发布时间:2022-01-01 22:34:53 前端开发

在 ngrx 中获取当前状态

这里在 ngrx 中获取当前状态的解决方案.这个例子很简单——你只需要使用take(1).但是在 take 的 rxjs 文档中它说: 返回指定数量的从一个开始的连续元素可观察序列 为什么取第一个值会得到当前状态(即最后一个值)? 此外,我在使用 Subject 进行单元测试时无法模拟这种行为. 解决方案 ngrx-store 是 length=1 的 ReplaySub ..
发布时间:2022-01-01 22:22:43 其他开发

#ngrx 示例中的 SwitchMap 与 MergeMap

以下是 Ngrx 示例中的代码:https://github.com/ngrx/example-app/blob/master/src/effects/book.ts 我的问题是为什么在第一个@Effect 中,它使用 switchMap 而其他的使用 mergeMap.那是不是因为第一个@Effect 是在处理网络,而使用 switchMap 如果它正在运行,你可以取消之前的网络请求? @Ef ..
发布时间:2022-01-01 22:05:16 其他开发

Rx.Subject 丢失事件

谁能解释一下这 3 个变体之间的区别? http://jsfiddle.net/8vx2g3fr/2/ 首先作为 expect 工作,所有事件都被处理. 但是第二个输掉了最后一个事件(3) 第三次输掉第二场比赛 (2) 你能帮我理解问题是什么以及如何让第三个变体处理所有事件吗? 1 let bs = new Rx.Subject();bs.subscribe(v=>{ ..
发布时间:2022-01-01 22:04:45 前端开发

RXJS 管道中未触发 tap()

我必须有办法做同样的事情,虽然我更喜欢第一个.但是第一种方法似乎不起作用.(tap() 没有被触发) //不起作用this.actions$.pipe(ofType(LayoutActions.Types.CHANGE_THEME),takeUntil(this.destroyed$),点击(() => {控制台日志('测试')}),);//有效this.actions$.ofType(Layo ..
发布时间:2022-01-01 22:01:28 其他开发

ngrx 效果错误处理

我有一个关于@ngrx 效果的非常基本的问题:如何忽略在效果执行期间发生的错误,使其不影响以后的效果执行? 我的情况如下:我有一个动作(LOGIN)和一个听那个动作的效果.如果此效果中发生错误,我想忽略它.在此错误后第二次调度 LOGIN 时,应第二次执行效果. 我第一次尝试这样做是: @Effect()登录$ = this.actions$.ofType('登录').flatMa ..
发布时间:2022-01-01 21:57:53 其他开发

在 Angular 和 rxjs 中重新连接 websocket?

我有一个基于 ngrx/store (v2.2.2) 和 rxjs (v5.1.0) 的应用程序,它使用 observable 侦听 Web 套接字以获取传入数据.当我启动应用程序时,我可以完美地接收传入的数据. 但是过了一段时间(更新很少),连接似乎丢失了,我不再收到传入的数据.我的代码: 服务 import { Injectable, OnInit } from '@angula ..
发布时间:2021-12-25 13:55:54 其他开发

Angular 6/NGRX 组合减速器

我正在使用带有 NgRX 4 的 Angular 6.我想组合多个减速器. app.module.ts import { BrowserModule } from '@angular/platform-b​​rowser';从'@angular/core' 导入 { NgModule };从'@ngrx/store' 导入 { StoreModule };从'@ngrx/effects' ..
发布时间:2021-12-21 18:41:00 其他开发

构建状态管理存储(ngrx/redux).平面代表数据,还是嵌套代表视图?

我正在使用 ngrx 存储来维护应用程序状态,使用 normalizr 将我的数据从 API 调用和 Immutable 中展平.到目前为止,它运行得非常好,但我正在处理一些更复杂的数据关系,我想知道如何继续构建商店. 为了简化事情,我有两组对象.会话和发票. 一个用户登录并可以查看他的会话列表.存储中的状态保存在对象 ISessions 中: export interface IS ..
发布时间:2021-12-21 18:40:48 其他开发

ngrx 仅当存储为空时才从服务器加载数据

我有一组静态数据,一个国家/地区列表,用于某些组件.这些数据是在这些组件的 ngOnInit() 上加载的,但我只想在我第一次请求数据时加载它们(存储是空的).以后每次我加载组件时,我都想简单地使用存储中的数据,而不是“刷新"它. 如何使用 ngrx 实现这一点? 我正在使用效果.这是我的代码的样子: 组件: 导出类 EditPageComponent 实现 OnInit {c ..
发布时间:2021-12-21 18:35:07 其他开发

Angular 5 Ngrx 状态在浏览器页面刷新期间丢失

我是 angular 5 和 Ngrx 的新手,我是如何设法实现登录功能的,一旦登录成功,我就会将用户带到仪表板.但是如果我刷新页面,用户状态似乎丢失了.即使页面重新加载,如何使用户状态持久化? 解决方案 如何在页面重新加载时保持用户状态? as @user184994 提到的 NGRX 状态仅保存在内存中.如果您希望它在页面刷新之间保持不变,请转到 LocalStorage 或 ..
发布时间:2021-12-21 18:29:00 其他开发

ngrx/effects 库的目的是什么?

我没有找到任何关于这个库的有用信息或者它的目的是什么.似乎 ngrx/effects 向已经知道这个概念的开发人员解释了这个库,并给出了一个更大的例子来说明如何编码. 我的问题: 什么是操作的来源? ngrx/effects 库的目的是什么;只使用 ngrx/store 的缺点是什么? 什么时候推荐使用? 它是否支持 angular rc 5+?我们如何在 rc 5+ 中配置它? ..
发布时间:2021-12-21 18:23:51 前端开发

如何为具有列表/详细信息视图和分页的应用程序选择 Redux 状态形状?

想象一下,我的数据库中有许多条目(比如用户).我也有两条路线,一条用于列表,另一条用于详细信息(您可以在其中编辑条目).现在我正在为如何处理数据结构而苦苦挣扎. 我正在考虑两种方法以及两者的结合. 共享数据集 我导航到/list,我所有的用户都是从api下载的,存储在redux store中,在键users下,我还添加了某种users_offset 和 users_limit 仅 ..
发布时间:2021-12-21 18:19:28 前端开发

ngrx 中的 store.select 是什么

我是 Redux 的新手,从 ngrx 开始.我无法理解这行代码的含义 store.select: 时钟:Observable;this.clock = store.select('clock'); 解决方案 用非常简单的术语来说,select 会返回来自应用程序状态的一部分数据,并将其封装到 Observable 中. 它的意思是,select 操作符获取你需要的数据块,然后将它转 ..
发布时间:2021-12-21 18:18:21 前端开发