Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 从存储NgRx中按id从存储中选择对象_Angular_Ngrx - Fatal编程技术网

Angular 从存储NgRx中按id从存储中选择对象

Angular 从存储NgRx中按id从存储中选择对象,angular,ngrx,Angular,Ngrx,如何根据我的状态的selectedBuildingId属性从我的状态选择建筑 我的店铺: 导出接口状态扩展EntityState{ selectedBuildingId:string } 是否可能有一些类似于此的选择器,但它不传递id,只接受存储中的一个 export const selectById=(id:string) =>createSelector(selectEntities,(buildingsDic)=>buildingsDic[id]); 我的解决方案是从商店获取id,然后

如何根据我的状态的
selectedBuildingId
属性从我的状态选择
建筑

我的店铺:

导出接口状态扩展EntityState{
selectedBuildingId:string
}
是否可能有一些类似于此的选择器,但它不传递id,只接受存储中的一个

export const selectById=(id:string)
=>createSelector(selectEntities,(buildingsDic)=>buildingsDic[id]);

我的解决方案是从商店获取id,然后获取带有id的
建筑
,但我觉得这不是一个好的解决方案。

假设您有一个名为
selectBuildingId的选择器,您可以在另一个选择器中使用选择器

export const selectById = createSelector(selectEntities, selectBuildingId, (buildingsDic, id) => buildingsDic[id]);

看看

Ohhh,我一直认为我只能在
createSelector
中使用一个“内部选择器”。谢谢你,伙计@请记住,每次使用的选择器更改都会触发选择器,这正是我要寻找的行为!