Адаптер сущности ngrx не обновляет вложенное свойство обязательного свойства - PullRequest
0 голосов
/ 18 апреля 2020

У меня есть объект, поддерживаемый в хранилище ngrx, как показано ниже -

{
 .
 .
 callStatus: ClientStatus;
 .
 .
}

, а ClientStatus - еще один вложенный интерфейс, например -

interface ClientStatus {
 status: boolean;
 csrObject: csrStatus;
}

, теперь в ответе API, который я получаю обновлены значения csrStatus для одного типа пользователя, который мне нужно обновить. но когда я пытаюсь -

adapter.updateOne(
{
  id: client.id,
  changes: { callStatus.csrObject: action.response }
})

я получаю сообщение об ошибке, так как мне не разрешен доступ к под-свойству данного ключа при обновлении.

Кто-нибудь знает, как я могу подойти это проблема?

1 Ответ

0 голосов
/ 23 апреля 2020

Я думаю, вам нужно немного исправить свой код:

adapter.updateOne({
    id: client.id,
    csrObject: action.response
  },
  state,
})

ngrx do c говорит, что первый аргумент является объектом частичной сущности, а второй аргумент является состоянием сущности:

  on(UserActions.updateUser, (state, { update }) => {
    return adapter.updateOne(update, state);
  }),
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...