我面临一个问题且无法解决:
我正在使用 ngrx 数据,如下所示:
const entityMetadata: EntityMetadataMap = {
forReports: {
entityDispatcherOptions: {
optimisticUpdate: true,
},
additionalCollectionState: {
selectedForReports: []
}
},
};
& 已注册:
export class ForReportsModule {
constructor(
private eds: EntityDefinitionService,
private entityDataService: EntityDataService,
private forReportsDataService: ForReportsDataService
) {
eds.registerMetadataMap(entityMetadata);
entityDataService.registerService("forReports", forReportsDataService);
}
}
我想要实现的是简单地用函数修改
selectedForReports
店内。
例如:
function updateSelect(value) {
...
...
selectedForReports = value;
...
}
我尝试浏览 ngrx 的官方文档所有 stackoverflow post github 帖子,但这些都不起作用。
您似乎正在使用 ngrx/data 功能来管理您的报告列表。该包非常适合简单的 REST 操作。我要做的是为 selectedForReports 创建另一个商店,因为此功能超出了实体数据包提供的功能。
因此,使用使用 ngrx/data 的 forReports 存储来处理 forReports 的查询、获取、更新和删除操作,然后创建另一个常规存储来处理 selectedForReports 操作和状态。
查看额外集合状态的文档。它们基本上要求您在使用此属性时设置新的减速器和结果处理程序,这与设置另一个商店没有太大不同。为什么不避免这种复杂性并为 selectedForReports 设置一个单独的存储?