Angular Service как приложение заявляет новый объект или обновляет текущий объект - PullRequest
0 голосов
/ 13 октября 2019

Я пытаюсь создать службу, которая будет каррировать состояние приложения в объекте, поэтому он устанавливает и получает объект состояния приложения.

Я не знаю, Redux, я нахожу его непонятным, поэтому я 'Я пытаюсь создать простую альтернативу, которая имитирует ее, очень легким способом.

В настоящее время я просто обновляю изменения объекта и не создаю новый объект.

Это метод обновления в службе:

updateState(key: string, value: any, persist: boolean = false) {
    this.appState[key] = this.appState[key] ? {...this.appState[key], ...value} : value;
    this.state$.next(this.appState);
    if (persist) {
      if (typeof value === 'object') {
        localStorage[key] = JSON.stringify(value);
      } else {
        localStorage[key] = value;
      }
    }
  }

Мой вопрос: обновляет ли Redux текущие значения объекта или создает совершенно новый объект при внесении изменения?

1 Ответ

1 голос
/ 13 октября 2019

редукторы должны быть чистыми функциями (функциями без каких-либо побочных эффектов). поэтому они не должны вносить изменения в существующий объект состояния, а должны создавать новый. https://redux.js.org/basics/reducers#handling-actions

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...