问题标签 [angular-ngrx-data]
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.
angular - 在页面刷新中:ngrx store dispatch issue with guard canactivate
我没有登录页面,这是 sso 调用
在应用程序组件中,我已经调度了一个动作来加载服务器端令牌调用并获取令牌,并且基于用户角色我可以激活路由中的守卫。如果警卫激活返回 true,我将进入仪表板页面。
在dashboard页面中,我在浏览器URL中进行了刷新,可以在登录动作效果之前激活execute,因此可以激活return false,页面显示空白。
在dashboard有子路由,也有productsdashboard/products等子链接,也有激活的guard,但是可以在login dispatch action影响成功调用之前激活return false。
谁能帮助我我做错了什么?
这里是路由,
这是激活方法:在这里我从效果调用中获得成功,同时从 app.component 调度一个动作:
应用程序组件:
问题只在页面刷新。单击路由器链接时,逻辑工作正常。
我的初始状态:
angular - NgRx 数据 DefaultDataServiceConfig
我刚开始在我的项目中使用NgRx Data,我正在寻找几个小时,但我找不到解决我面临的问题的方法。
我正在尝试通过使用DefaultDataServiceConfig来更改默认的调用根:
app.module.ts
环境.ts
但是,呼叫将转到localhost http://localhost:3000/client/list
而不是转到my-api.com https://my-api.com/v1/client/list
。
有什么我想念的吗?我找不到任何示例,并且ngrx.io文档很差。
angular - 在组件中组合输入/服务数据
我有一个角度组件,它从 @Input 变量中获取数据,并使用它来过滤来自服务的其他数据。(简化的)结构如下所示:
电话详细信息组件:
路由配置如下:
只要我从父容器“输入”PhoneDetailsComponent,一切都会按预期工作。当用户手动重新加载 PhoneDetails 视图时,changeLogs$ 数组为空,除非我手动注入解包后的 observable 的属性,如下所示:
如果我像这样注入 phoneNumber$
它不起作用。(我不在组件中使用这些额外的输入)
现在我知道还有其他方法可以实现此功能,但我只是对代码为何如此表现感兴趣?
感觉就像我对基本的 rxjs 管道缺乏一些基本的了解。那么..这里到底发生了什么?
任何帮助表示赞赏。
更新
BizzyBob 是对的。直接重载组件函数第一次执行phoneNumber$
Observable 没有任何值filter
我通过快速检查解决了这个问题:
现在..这是推荐的方法,还是有更好的方法?
angular - NgRx Data 自定义 URL 生成器
我是 NgRx 的新手。经过初步研究,NgRx 尤其是 NgRx 数据包似乎非常适合我正在开发的应用程序。需要注意的是,我们的实体由具有非常规路线的微服务支持。
每个实体都有自己的微服务,任何操作都通过 URL 参数中的基本记录 ID 进一步隔离。
我有一个路线查找表,但baseRecordId
会保存在商店里。NgRx Data 文档有一个简单的示例,概述了 URLGenerator 的替换。
如何在每个实体的基础上指定我的微服务路由,同时还让这个生成器从存储中读取?这可以轻松完成还是我应该从每个实体的自定义服务的角度来解决这个问题?
https://ngrx.io/guide/data/extension-points#replace-the-httpurlgenerator
angular - @NgRx 如何在实体之间建立多对多关系?
假设我有这种状态:
在某个时刻,我需要在约会实体的“mandatoryRecipients”数组中添加一个值。我知道这种状态没有被规范化,但我怎样才能将它规范化以完成多对多关系?
angular - 角解析器未经授权的调用
我正在使用ngrx/data,为了设置存储,我使用解析器。
用户解析器.ts
用户路由.ts
问题是当我使用解析器时,我的 Auth 拦截器没有将令牌附加到标头。当我评论“解决”时,一切正常。所有请求均已获得授权。
auth.interceptor.ts
可能是什么原因?
angular - 如何在操作文件中使用 entityActionFactory 来自定义 ngrx/data 中的操作?
我看到我们可以在ngrx/data中自定义我们的操作,如下所示
https://ngrx.io/guide/data/entity-actions#tagging-the-entityaction
因此,我的问题是如何在正常的***.actions.ts文件中创建这些自定义操作(示例)
通过我之前写的entityActionFactory然后在效果中使用它?(示例)
那可能吗?
提前谢谢了
ngrx-store - 覆盖 @ngrx/data、@ngrx/entity 操作、减速器、效果
我是@ngrx/data的新手,并试图了解如何覆盖reducer & actions。
我当前的问题可以通过其他方式解决,例如添加额外的方法、reducer 和操作,但我将来可能需要这个答案。
问题是我的删除调用应该只是将项目设置为商店中的“隐藏”而不是删除它。
ngrx - Can I get data from an NgRx service without updating cache?
I have my service and need to get data using getWithQuery
, but I don't need NgRx store to be updated. I just need to get this data and use them in subscribe
method.
I've tried different EntityActionOptions.mergeStrategy
but cache is still updated.
Any ideas?
Thanks!
ngrx - 如何覆盖/替换 NgRx 中的 DefaultDataService 并编写自定义 API 方法
您好我在使用带有 NgRx 数据的自定义 API 调用时遇到问题。我正在尝试在 EntityService 中使用我自己的自定义调用,但它不起作用
而不是这个:
我需要 NgRx Data 可以这样使用的东西: