[英]How to avoid mutation of the object in thunks
我想在每次调用我的动作时创建一个新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));
};
你可以使用JSON.parse(JSON.stringify(object));
。 这不是最好的方法,但您可以获得对象的深层副本。 适用于小物体。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.