В настоящее время я работаю над проектом, в котором для хранения информации используются данные ngrx. Пока это работает отлично, но теперь я хочу сохранить данные сущности от конечной точки, которая дает мне два отдельных типа сущностей в своем ответе.
{
"posts": [
{
"id": 1,
"title": "Title"
},
{
"id": 2,
"title": "Title 2"
}
],
"users": [
{
"id": 1,
"username": "Username"
},
{
"id": 2,
"username": "Username 2"
}
],
"date": "1996-10-15T00:05:32.000Z"
}
Теперь я хочу сохранить их отдельно в entityCache
ngrx-данных. Для этого я реализовал базовый HTTP-сервис c в Angular, который расширяет DefaultDataService
. Это я интегрировал в свой фасад и добавил необходимые метаданные.
constructor(entityServices: EntityServices) {
this.postsAndUsersService = entityServices.getEntityCollectionService(
'PostsAndUsers'
);
}
export const entityMetadata: EntityMetadataMap = {
PostsAndUsers: {
selectId: selectIdPostsAndUsers
}
}
Я могу получить всю полученную информацию "в целом" из магазина, но я думаю, что теряю много преимуществ, которые я получаю от использования данных ngrx (например, получение массива идентификаторов).
Есть ли способ нормализовать / разделить данные и записать их в различные секции entityCache
?
Большое спасибо за любую подсказку.