使用vue3 的组合api获取数据
const useFetchListEffect = (comId, deptId) => {
let deptData = ref([])
const getDeptList = async(comId) => {
const result = await fetchDept({ com_id: comId })
deptData.value = result.items
console.log('result',result.items)
}
return { deptData, getDeptList }
}
listQuery.comId = value
let { deptData, getDeptList } = useFetchListEffect(listQuery.comId)
getDeptList()
console.log('deptData', deptData.value)
const deptList = []
deptData.value.forEach(item => {
deptList.push({ text: item.name, value: item.id })
})
我在useFetchListEffect方法中打印出来result的结果,但是在另一个函数中调用的时候,调用完getDeptList还是空数组,这是什么原因
找到问题了,我用了异步,倒是下面函数在调用的时候异步还未完成,应该在getDeptList后面使用.then
getDeptList是一个async,你得
await getDeptList()