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),
}));
COPYRIGHT 2020 @ EUID