Как избежать мутации объекта в громадинах - PullRequest
0 голосов
/ 18 мая 2019

Я хочу создать новый object каждый раз, когда вызывается мое действие. Теперь я достиг этого, используя Object.assign, но есть ли лучший способ добиться этого, потому что Object.assign не является глубокой копией?

export const addPlayer: Thunk = (players: any[], name: string) => (
  dispatch,
  getState
) => {
  const state = Object.assign({}, getState().players);
  errors.forEach(e => {
    state.playerQueue.push({
      player: {
        message: e.message,
        name
      }
    });
  });
  dispatch(playersAction(state));
};

1 Ответ

0 голосов
/ 18 мая 2019

Вы можете использовать JSON.parse(JSON.stringify(object));.Это не лучший способ, но вы можете получить глубокую копию объекта.Хорошо работает для небольших объектов.

...