问题标签 [angular-redux]

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 投票
1 回答
638 浏览

redux - NGXS 是否像 redux-undo 一样支持 undo

我正在考虑向我的网络应用程序添加状态管理。我正在使用 Angular 6。我看过这个库,看起来很有希望: https ://github.com/angular-redux/store

但我同意 NGXS 的作者的观点,即装饰器可能是正确的方法。我还想将 undo-redo 添加到状态管理中,似乎 angular-redux 与 redux-undo 有这个: https ://github.com/omnidan/redux-undo

NGXS 中是否有与此等价的功能?(我不需要花哨的东西)

我需要手动编写吗?

0 投票
0 回答
54 浏览

angular-redux - @angular-redux 实现

我正在我的测试应用程序中实现 redux 来管理应用程序状态,我当前的情况是我需要访问后端服务并在服务成功后将响应更新回我的应用程序状态。从那时起,我实现了将处理命中后端服务并更新与 reducer 分离的应用程序状态的效果。但是在调度操作后没有调用效果请检查所做的配置,如果我遗漏了什么,请建议我。

包.json

在 app.module.ts 里面

内部组件(调度)

内部影响 Test.Effects

0 投票
2 回答
86 浏览

angular - 移动状态后,清除状态会影响其他状态

我是 ngrx 的新手,我在退订时遇到问题。我正在使用最新版本的 Angular 和 ngrx。

我有 CreateState 和 ModelState。在对话中创建 CreateState 后,我想将 CreateState 复制为 ModelState 的一部分,然后清除 CreateState 使对话变为空。

为此,我首先接收 CreateState 的整个状态,然后调用 ModelState 的 Action 进行复制。

移至新页面后,我正在调用 CreateState 上的操作以进行清除。

但似乎我的第一页中的 Select Subscription 仍在侦听,因此清除 CreateState 会触发 select 并再次调度 ModelActions.CreateAction。

我尝试只收听Observable 或取消订阅 Observable 但 Typescript 说or.first()没有功能。.first().unsubscribe()

我有什么问题吗?我应该使用不同的方法来移动和清除状态吗?

0 投票
1 回答
119 浏览

angular - Angular 不更新 View (redux, ionic ...)

我有一个非常简单的 Ionic 页面。此页面显示 Reduxstate 的状态。在此页面中,我有一个按钮,我可以通过该按钮进入另一个页面,在那里我可以更改状态并返回。如果我回来,视图将不会更新。我花了很长时间研究为什么这不起作用。不幸的是,没有成功。

零件

模板

尝试找出:

  • 该页面位于 Ionic 超级选项卡组件中。我首先认为这与插件离子超级标签有关。我把它拿出来并没有帮助
  • 也许它与redux有关?也许状态没有改变?也许这不会发生在角区?这就是为什么我把它全部重写了一点

    所有更改都被接受并存储在组件中。控制台输出始终为真(始终在 Angular 区域中)。为什么视图没有更新?

  • 上次我尝试手动触发 changeDetection ,但这导致了错误。

    /li>
0 投票
1 回答
275 浏览

angular - Angular(typescript)中带有tassign的Redux试图加入state.array和action.array但获取state.array.join不是一个函数?

还原函数:

声明+状态:

我似乎无法正确地将这些语法结合在一起。

0 投票
1 回答
655 浏览

angular - Angular7 + REDUX:错误:“ExpressionChangedAfterItHasBeenCheckedError:表达式在检查后已更改

我在这里检查了所有现有的线程,并进行了相当多的额外故障排除。这个问题已经困扰了我几个星期了,不知道该怎么办。

我在 angular7 中有一个 redux 架构,我只是发送动作来更改我的 redux 商店中的布尔值。

在我的 app.component.ts 中,我从 redux 商店订阅了那个“承诺”,并根据它的值更改了一个本地变量,我使用 ngClass 绑定到 HTML 元素,如下所示:

在 app.component.html 的 HTML 标记中:

在我的 app.component.ts 控制器中:

我的 Redux 操作:

然而错误仍然存​​在!

该错误让我 100% 确定这是由于该特定变量造成的。

如果我只是关闭该 html 元素,则不会显示该错误。

0 投票
0 回答
888 浏览

javascript - Angular7(在 Angular 6 中没问题) ERROR TypeError: "e[n] is undefined" on firefox only in dev only due to "loading" variable in redux?

所以,我在我的 redux 商店中使用一个“微调器”变量在我的进度条上插入一个带有 ngClass 的类并隐藏它/显示它。

现在 - 我知道这是罪魁祸首,因为如果我删除所有这些逻辑,一切都很好。这是一个已经投入生产几个月的应用程序,一切正常,直到升级到 A7。

  1. 我尝试使用 @select() 和 | 带有 ngIf 的异步管道。删除 ngIf 逻辑但保留微调器会使错误消失。
  2. 我尝试根据商店中的数据填充局部变量(如果为 true hiddenSpinner="hiddenSpinner" 否则 hiddenSpinner="")。删除标记中的所有相关内容不会使错误消失。

这让我觉得这纯粹是与 redux 逻辑有关。

如果我运行 ng serve --prod,一切都会运行良好。

所有相关的 redux 商店代码:

错误 :

0 投票
0 回答
23 浏览

angular - 由于 Redux 增强器,Angular e2e 因“找不到 Angular”而失败?

我有一个 Angular 应用程序,它是样板文件,没有任何意义,实际上是“欢迎”模板。

我正在尝试运行 ng e2e 但它失败了,在它消失之前检查 chrome 选项卡控制台向我显示了我在启用 redux 开发工具但我的浏览器中没有扩展程序时遇到的相同错误。

我的 app.module 中的代码:

有什么办法可以让 e2e 工作并启用它,还是我应该放弃 redux 开发工具?

0 投票
0 回答
360 浏览

angular - 我们如何绑定来自存储的数据,例如ngrx(Angular)

我正在开发一个项目并将来自ngrx存储的devextreme数据网格绑定到角度应用程序中。我正在调度一个动作,并基于动作更新我的 redux 存储,即从 api 获取网格数据。我在 devextreme 的 customstore 的加载函数中调度我的动作。

这是DevExtreme Demo的链接

任何人都可以帮助我。

提前致谢

0 投票
1 回答
145 浏览

angular - @angular-redux/store 尝试在用 @select() 修饰的属性上测试使用异步的组件 - 文档不存在

我正在尝试测试一个表单,该表单具有一个选择表单控件,其中包含使用 ngFor 和 | 进行迭代的选项。用 redux 包中的 @select() 装饰的属性“videoCategories”上的异步管道。

我无法使该表单控件对测试有效,因为我没有默认选项,我想在其中模拟一些选项。在整个应用程序中,我可能需要对许多其他测试执行此操作。

现在,我正在尝试使用来自 @angular-redux/store/testing 的 MockNgRedux 来执行此操作,并且通过包的 intellisense 和 github 页面没有运气。

到目前为止我的代码:

但是,当然,它不起作用。