问题标签 [ngrx-store]

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.

0 投票
0 回答
132 浏览

angular - 在 Angular 中实现简单的 redux 商店计数器实现时出错

我正在尝试学习如何在 Angular 应用程序中实现 redux。我关注 了 https://github.com/ngrx/platform/tree/master/docs/store

我按照提供的所有步骤操作,但收到此错误

'"counter"' 类型的参数不能分配给 '(state: IAppState) => number' 类型的参数。

我无法理解我错过了什么。

应用模块类

减速机功能

0 投票
1 回答
138 浏览

angular - 是否可以在通过运算符进行转换之前进行观察?

是否有可能?

更详细的问题

我有这样的事情:

transformedobservable 是新的observable 并且它没有连接到初始 observable source(我无法通过 访问它transformed,我认为)。是否有可能在使用运算符转换后以某种方式获得初始(在运算符应用之前)可观察?

我的情况

代码:

和 AppendLoader:

我在那里有三个可观察的:

  • this.actions$(所有动作)
  • 从 this.action$ this.action$.ofType(friendsActions.GET_FRIENDS)friendsActions.GET_FRIENDS类型的可观察对象)创建
  • 第三个可观察对象(第二个并switchMap应用于它)(GetFriendsSuccessAction/的可观察对象GetFriendsFailureAction

我只能访问装饰器中的第三个 observable,因为这个 observable 在getFriends$属性中。

我想在 AppendLoader 装饰器中做一些动作。我想订阅列表中的第二个 observable,当发出值时,我想显示负载微调器(showLoader()例如)。我想订阅第三个 observable,当成功/失败值发出时,我想隐藏加载微调器。

0 投票
1 回答
5320 浏览

angular - 在 Angular 中导入 @ngrx/core @ngrx/store 时出现问题

我正在尝试使用 REDUX 模式来构建我的下一个 Angular 应用程序,但由于某种原因我无法导入所需的库。

app.module.ts

在新的 Angular 安装或我的原始应用程序上,我不断收到这些错误

有人知道这可能是什么吗?

0 投票
1 回答
975 浏览

angular - 角度测试:无法解析商店的所有参数:(?,?,?)

我正在尝试将我的 ngrx/Store 声明到规范文件中以测试容器组件。所以我首先导入商店并在 beforeEach 中执行以下操作:

但我从标题中得到错误,无法解析商店的所有参数:(?,?,?)。

有任何想法吗?

非常感谢

0 投票
0 回答
195 浏览

angular - 如何使用 ngrx/store ngrx/effect 处理结帐

我是 angular2 ngrx/store 和 ngrx/effects 的新手。我已经整理了一个应用程序,我将物品放入商店。我无法正确结帐。我的商店由标题信息(如运输信息)以及作为数组的项目信息组成。像这样:

我的行动:

}

我需要创建一个包含购物车运输信息的标题记录,然后在收到订单号后创建目录信息。我必须为每个功能使用两个休息服务。我能够创建订单。

通过做这个:

我写的效果只有在有效负载中有一个 catalogDetail 时才有效:

0 投票
2 回答
1516 浏览

javascript - 错误后可观察到 rx 损坏

我正在尝试使用 ngrx store + ng 效果为我的应用程序编写登录流程。我已经设法编写它并且它在快乐的场景中工作,但是当用户在表单中输入错误的值时,服务器以 401 响应,下一次登录尝试没有效果。我已经读过,在使用 observables 时必须捕获异常,以免“破坏”流,但据我所知,我已经捕获了异常并且它现在仍在工作。

下面的代码;

0 投票
1 回答
1892 浏览

angular - 使用 ngrx 最新版本的 Ngrx App 始终未定义存储对象

我有一个简单的应用程序

没有 NGRX

零件

服务

当我尝试将其转换为 ngrx 时,所有这些工作都很好,它使用存储和效果来工作。

使用 NGRX

在组件中创建了一个状态

行动

效果

减速器

应用程序模块

它转到服务调用,我做了一个日志,但是在组件中获取它时,我得到以下信息

在此处输入图像描述

很抱歉,这篇长文只是想让您了解情况。

我关注了这个视频https://www.youtube.com/watch?v=lQi5cDA0Kj8 和这个https://github.com/ngrx/platform/blob/48a2381c212d5dd3fa2b9435776c1aaa60734235/example-app/app/books/reducers/books。 ts

0 投票
1 回答
598 浏览

javascript - 角度未定义的组件输入值

我正在尝试将帖子从一个组件传递到另一个具有编辑表单的组件。外部组件获取帖子并传递给内部组件进行编辑,但由于某种原因它没有通过,所以我得到了一堆未定义的错误。

外部组件 html 如下所示:

外部组件打字稿如下所示:

内部组件 html 如下所示:

内部组件打字稿如下所示:

store.select 语句中的外部组件的 console.log 正确地将帖子打印到控制台,但 ngOnInit 函数中的内部组件的 console.log 语句说它是未定义的,因此商店正确调度 LoadPostAction 并从服务器,但在内部组件中,我不断收到 post.content 未定义的错误,并且帖子内容从未出现在表单中。

任何帮助,将不胜感激。谢谢

0 投票
0 回答
980 浏览

angular - ngrx effect() 只触发一次 - Angular 4

我的登录系统是围绕 ngrx/store 构建的。当我加载网站时,它在我第一次提交登录凭据时效果很好。但是一旦我这样做了两次(比如我输入了错误的密码),事件就会被触发,但效果不会。我无法弄清楚问题是什么。

有问题的@Effext():

以这种方式构建的所有效果器都是一样的。

在此处输入图像描述

0 投票
3 回答
1916 浏览

angular - 角度 4 变量第一次没有更新

这是我面临的问题。

我在分配给指令的组件中有一个变量。我正在使用 ngrx 来调度和订阅事件。所以问题是变量第一次没有更新。之后就没有问题了。

我有一个谷歌地图和图标,点击任何图标时,它会使用 id 和地图边界调用服务器,然后使用返回的数据调度一个动作。

在组件类中

在组件中 this.data 不会第一次更新。如果我控制台 log(this.data) 那么它可以工作,但它不会在 html 中更新。

如果我像这样从 getFromServer 订阅中取出调度操作:

然后它工作。

目前我有一个使用 ChangeDetectorRef 的解决方案。

我不确定这是否是正确的方法,但我无法弄清楚发生了什么或任何其他解决方案。

任何帮助将不胜感激。谢谢