import { create } from "zustand"; type PublishData = { game_type: string; [key: string]: any; } interface PublishBallState { // 待注入到发布页面的表单数据(支持单场或多场) publishData: PublishData[] | null; // 赋值/覆盖整份数据 setPublishData: ( data: PublishData[] | null ) => void; // 读取当前数据 getPublishData: () => PublishData[] | null; // 清空 clearPublishData: () => void; } export const usePublishBallStore = create()((set, get) => ({ publishData: null, setPublishData: (data) => set({ publishData: data }), getPublishData: () => get().publishData, clearPublishData: () => set({ publishData: null }), })); // 便捷 hooks export const usePublishBallData = () => usePublishBallStore((state) => state.publishData); export const usePublishBallActions = () => usePublishBallStore((state) => ({ setPublishData: state.setPublishData, clearPublishData: state.clearPublishData, }));