新建store存储地区和职业picker选项

This commit is contained in:
2025-10-17 17:10:15 +08:00
parent f3ab0020d3
commit 9ef35267cf
4 changed files with 96 additions and 55 deletions

View File

@@ -0,0 +1,39 @@
import { create } from "zustand";
import { UserService } from "@/services/userService";
export interface PickerOptionState {
cities: any[];
professions: any[];
getCities: () => Promise<any>;
getProfessions: () => Promise<any>;
}
export const usePickerOption = create<PickerOptionState>((set) => ({
cities: [],
professions: [],
getCities: async () => {
try {
const res = await UserService.getCities();
set({ cities: res });
return res;
} catch (e) {
console.log("获取城市列表失败:", e);
throw e;
}
},
getProfessions: async () => {
try {
const res = await UserService.getProfessions();
set({ professions: res });
return res;
} catch (e) {
console.log("获取职业失败:", e);
throw e;
}
},
}));
export const useCities = () => usePickerOption((state) => state.cities);
export const useProfessions = () =>
usePickerOption((state) => state.professions);