Redux 如何将ID数组添加到不使用';我没有

Redux 如何将ID数组添加到不使用';我没有,redux,normalizr,Redux,Normalizr,我的模式几乎完全按照我在redux状态下所希望的方式设置,只是我想向formTemplate对象添加一个表单ID数组。 它看起来是这样的: //规范化表单模板 { 1: { id:'1', isGlobal:没错, 名称:'表单模板名称', 表单:[1,2],//这是我想添加的行……但是如何添加? }, } //规范化形式 { 1: { id:'1', 创建日期:“2016-12-28323:30:13.547Z”, 名称:“表格1”, 父模板:“1”, PDF文件:[1,2], }, 2:

我的模式几乎完全按照我在redux状态下所希望的方式设置,只是我想向formTemplate对象添加一个表单ID数组。 它看起来是这样的:

//规范化表单模板
{
1: {
id:'1',
isGlobal:没错,
名称:'表单模板名称',
表单:[1,2],//这是我想添加的行……但是如何添加?
},
}
//规范化形式
{
1: {
id:'1',
创建日期:“2016-12-28323:30:13.547Z”,
名称:“表格1”,
父模板:“1”,
PDF文件:[1,2],
},
2: {
id:'2',
创建日期:“2016-12-28323:30:13.547Z”,
名称:'表格2',
父模板:“1”,
PDF:[],
},  

}
您将无法使用Normalizer执行此操作,因为表单模板实体没有返回表单实体的上下文。你的行动/减速器需要处理这个问题。

好的,我想出了一个方法。我将formTemplate实体更改为手动映射,如下所示:

const formTemplate=newschema.Entity('formTemplates',{}{
processStrategy:(值,父项)=>{
//eslint禁用下一行EQEQ
const childrenForms=parent.data.filter(form=>form.attributes.form\u template\u id==value.id)
返回{
id:value.id,
名称:value.attributes.title,
isGlobal:value.attributes.is_global,
表单:childrenForms.map(form=>form.id),
}
},
})