需要 reducer 将一个对象添加到我状态的每个 *child* 项目中

马蒂诺斯·埃夫

我有一个 ngrx 商店(在打字稿中),我想在我的 EntityAdapter 减速器中检查一个动作,然后将动作的有效负载添加到商店中我的项目的每个子项中。下面的例子

我们在状态中有一个对象数组,每个对象都有一个属性,我们称之为 X,它也是一个数组。

[
 {x:[]}
,{x:[]}
,{x:[]}
]

我想结束的是:

[
 {x:[{y}]}
,{x:[{y}]}
,{x:[{y}]}
]

减速机运行后

这是它的瓦罐:

export const permissionWithRolesReducer = createReducer(initialPermissionWithRolesState,

  on(actions.loadPermissionsWithRolesSuccess,(state,{permissionWithRoles: permissionWithRoles}) =>{ 
    return permissionWithRolesAdapter.upsertMany(permissionWithRoles, state)}),

    on(actions.addRole,(state,{newRole: newRole}) =>{ 
      return permissionWithRolesAdapter.???}));

结果是在权限下添加角色。

该存储包含一个权限列表。每个权限都包含它适用的角色列表。当我们添加一个新角色时,我想将它添加到我商店中的每个权限中。

有任何想法吗?

时间作家

您可以使用map, 它映射集合中的每个实体(类似于[].map()在 javascript 中)。

return permissionWithRolesAdapter.map(entity => ({ ...entity, y: action.y }), state)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何将一个独立项目添加到另一个Maven项目中

为什么需要将配置文件添加到项目中才能正确设置GCM?

Clojure-在项目中需要一个库的多个版本

需要在redux的reducer中将数据追加到数组中

无法将AdMob添加到我的项目中:我的项目是ReactNative,而AdMob需要JAVA

我的项目中是否需要SpriteKit Scene(.sks)文件?

TypeScript和Redux:为什么需要添加`| | undefined`到我的Reducer状态类型?

无法将Gradle依赖项添加到我的代号一个项目中

需要在React Redux Reducer状态下运行.slice

需要制作定制的reducer来减去两个值

更新现有项目或将新项目添加到reducer | React-Redux

我是否需要在React项目中将.env文件添加到版本控制中?

仅将第一个Beautiful Soup对象中的项目添加到我的列表中

我是否需要将Hibernate Search添加到我的中级项目中?

我需要将新项目添加到我的SQL表中并更新旧项目

如何在需要的Android示例中单击将项目从一个列表视图添加到另一个列表视图

我需要添加到项目中以包含库的什么内容?

需要在我的流星项目中包含一个辅助HTML页面

无法将coreGraphics添加到我的项目中

我需要建议以将应用程序集成到我的项目中

无法将库项目添加到我的android项目中

我需要一种在Rails项目中定义单词的方法

我需要忽略数组中的某些项目,并从剩余的项目中创建首字母

我需要在反向文本项目中调用一个方法

我需要从汤项目中提取数据

我是否需要为 iOS 项目中的每个 http 请求创建请求和响应模型?

编写一个 reducer 函数,将一个新项目不变地添加到嵌套的 store 属性中

试图了解需要将哪个 SHA-1(开发和发布)添加到 firebase android 项目中

如何从我的 Reducer 对象中删除一个项目?