vue3加载界面时如何初始化数据
需求:登录页面有个图片验证码,需要请求后台,得到的结构如下:
{
"captcha_id":"XRjYnf3NEqmEDARRzGMZ",
"captcha_image":"data:image/png;base64,XXXX"
}
封装了一个函数getLoginCaptcha(),用于发送请求(axios方式)。代码如下,网络中查看请求响应都没有问题,那么我该如何获取这个数据并赋值给视图呢?我的代码如下(省略各种import):
<script lang="ts" setup>
let captcha_image = ref()
onMounted(()=>{ //改成onBeforeMount一样有问题,加async await一样不起作用
init()
})
const init = ()=>{
getLoginCaptcha().then(res=>{
console.log(res)// 此处打印为undefined
captcha_image.value=res
}).catch(err=>{
console.log(err)
})
}
</script>
getLoginCaptcha
都获取undefined
,问题就是那个函数。