如何避免物体变形

时间:2019-05-18 08:09:21

标签: javascript typescript redux redux-thunk

每次调用动作时,我想创建一个新的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 :(得分:0)

您可以使用JSON.parse(JSON.stringify(object));。这不是最好的方法,但是您可以获取对象的深层副本。适用于小物体。