问题标签 [angular-state-managmement]

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 回答
128 浏览

angular - Angular 2:数据持久化

我是新手,Angular并且对持久数据有疑问。我有一个必须持久化数据的场景。我在我的homepage组件上,我有一个个人详细信息表单,该表单对/personaldetails path. 用户需要填写数据并在下一步按钮上移动到有另一个click路径的下一页。/educationform

用户可能会觉得他必须更正个人详细信息页面上的一些数据。他点击后退button并从/education/personaldetails

在这里我想持久化数据。我希望输入字段中的数据与用户在打开时输入的数据相同/personaldetails

我怎样才能做到这一点?

请分享任何可以帮助我的工作代码或任何参考。我尝试搜索类似的查询,但没有运气。

0 投票
2 回答
12510 浏览

state-management - 如何在 NGXS 中使用 patchState 与 setState?

我正在学习 ngxs,但我不明白什么时候应该使用patchStateand setState?有什么不同?

对比

0 投票
1 回答
1043 浏览

angular - mobx & mobx-angular:如何从商店更新和订阅更新的值?

我有角度应用程序 v6,我正在使用最新版本的mobxmobx-angular(您可以在依赖项中看到)。我来自 ngrx,ngxs 背景,所以很难理解 mobx 流程,因为它或多或少地angular-service接近了一些额外的东西(也有性能)。

我在 stackblitz 示例中问的问题很少。希望有人指导一下。

演示应用

store.ts

app.component.ts

app.component.html

0 投票
1 回答
1168 浏览

angular - 在 Angular 应用程序中保持视图状态

我有一个视图,我的文本输入很少。输入的可见性可以由用户控制。当用户浏览应用程序并返回到同一页面时,视图的状态应该与他离开页面时一样(对于该用户会话)。

例如:如果页面上有 5 个文本输入(第二页),用户选择隐藏其中的 3 个。然后他导航到第一页,当他返回到第二页时,他应该只看到两个输入(因为他选择隐藏其他三个)。

在进行研究时,我遇到了使用 ngrx/store 的角度状态管理,这似乎有助于解决这个问题,但是需要采用我不知道的角度方式,因为我之前没有使用角度存储/状态管理的经验尤其是。

请参阅链接 以获取正在开发的应用程序的小型演示规模表示。

已经谢谢你了!

0 投票
2 回答
70 浏览

angularjs - Angularjs:编辑和添加页面的相同状态和url

我想对编辑和添加页面使用相同的状态。这是我的状态的样子

现在在我的控制器中,我想检查当我得到 stateParam“packageId”时得到布尔变量 isEditMode = true,否则我想将它设置为 isEditMode = false。

现在,当我的 editMode 为 true 时,我将允许用户使用预填充的详细信息编辑产品。

当 editMode 为 false 时,我想显示一个空白产品表单,用户可以在其中创建新产品。

采用这种方法的原因:我想重新使用 HTML 页面来编辑和添加产品

面临的问题: 我可以访问 /editProduct/1 但我无法访问 /editProduct,我被重定向到默认路由

0 投票
2 回答
713 浏览

angular - 即使在 Angular NGXS 中出现错误时,ofActionSuccessful 也会返回 True

当我尝试编辑我的用户时遇到问题。我决定在成功更新后再次获取所有用户。但是,如果出现错误,我不希望表单重置并且模式消失。我的问题是当我尝试更新用户并返回错误时。即使出现错误,ofActionSuccessful 仍然会触发。请在下面查看我的代码。

组件.ts

状态.ts

0 投票
1 回答
163 浏览

angular - 特定实体的大量动作/效果

作为一个角度应用程序,我正在研究中型到大型的方法,因此动作的数量和效果也在增长。如何处理特定实体不断增长的动作/效果文件。

我曾尝试将操作分成多个文件,但 Typescript 枚举的问题是它们无法合并。这里最好的方法是什么?我的一个想法是拥有专用的枚举文件,根据它们所涵盖的应用程序部分在文件中分离操作,然后为所有这些操作合并为一个类型的索引文件。

关于效果的同样问题。由于它们是一个@Injectable类,是否可以将不同文件中的操作分开,然后针对该特定实体将它们“合并”到一个大类中

0 投票
2 回答
2623 浏览

angular - 如何在 Ngrx 中将值传递给 Effect - Angular

我对 NgRx 很陌生。我想将值传递给效果。该值是要在服务中搜索的参数。

效果TS文件

如您所见,我有一个名为 的方法getParam(),它订阅BehavioralSubject包含搜索参数的 a。我无法getParam()在我的效果中调用该方法。还有其他方法吗?还是直接将其Effect从不同的.ts文件传递给?我使用有效载荷吗?

组件 TS 文件

减速机TS

行动 TS

0 投票
1 回答
3506 浏览

javascript - 当状态更改而没有突变时,Angular 会重新呈现组件列表

我来自 React,我已经使用 Angular 工作了几个月了。React 组件在重新渲染时只更新必要的 HTML,而 Angular 组件似乎在状态未发生变化时完全重新渲染。如果我直接改变状态似乎工作得很好。

这是我非常基本的示例:

我有保持状态的主要组件

并在其视图中呈现项目列表:

项目组件如下所示:

我在 item 组件中添加了该复选框,只是为了注意组件何时完全重新渲染。

所以我要做的是勾选复选框并age为该州的每个用户增加。

如果我通过改变状态来增加它,视图会按预期更新并且复选框保持选中状态:

但是,如果我在age不直接改变状态的情况下更改了整个列表,则将重新呈现整个列表,并且不再选中该复选框:

这是CodeSandbox中的完整示例。

谁能解释为什么会发生这种情况,当我不改变状态时,如何使列表不完全重新渲染?

0 投票
1 回答
386 浏览

angular - 在 Angular NGXS 中从不同组件中搜索数据

我试图弄清楚我将如何从不同的组件中搜索 NGXS。我有来自导航栏组件的搜索栏,而我正在显示来自不同组件的应用程序组件的数据。请看这个 stackblitz 链接 点击这里

代码