| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- 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
- }
- }
|