상태 덮어쓰기 옵션

set 함수에는 2번째 인수인 덮어쓰기(Overwriting) 옵션을 설정할 수 있습니다. 병합(false: 기본값) 대신, 대체(true)하게 되면 액션까지 모두 지워질 수 있음에 유의하세요.

import omit from 'lodash-es/omit';
import { create } from 'zustand'; 

const useStore = create((set) => ({
	salmon: 1, 
	tuna: 2,
	// 상태를 빈 객체로 덮어쓰기 (액션 포함)
	deleteEverything: () => set({}, true),
	// tuna 상태를 제외한 나머지 상태로 덮어쓰기
	deleteTuna: () => set((state) => omit(state, ['tuna']), true),
}));

참고

Zustand Documentation


COPYRIGHT 2020 @ EUID