import { ref, onMounted } from 'vue' import { customApi } from '@/service/custom' import Config from '@/config/index' const { Code } = Config export function useAccountOptions() { // 响应式数据 const loginOptions = ref([]) const isLoaded = ref(false) // 获取账户列表(核心方法) const getDateList = async () => { try { isLoaded.value = false const res = await customApi.CustomDropdown({ platform: '' }) if (res.code === Code.StatusOK) { // 格式化下拉选项 loginOptions.value = res.data.map(item => ({ ...item, value: item.login, text: item.login })) } else { uni.showToast({ title: res.msg || '获取账户失败', icon: 'none' }) loading.value = false } } catch (err) { uni.showToast({ title: err.msg || '网络异常,请重试', icon: 'none' }) loading.value = false console.error(err) } finally { isLoaded.value = true } } // ✨ 自动执行(页面挂载后自动调用) onMounted(() => { getDateList() }) return { loginOptions, isLoaded, getDateList } }