解决微信头像填写,微信临时路径不能持久化问题
逻辑原理
把微信获取到临时路径图片转存到本地,然后通过本地在获取,在传到服务器,在通过接口存储到数据库,实现持久化。
<template>
<div>
<button class="avatar-button" plain open-type="chooseAvatar" @chooseavatar="onChooseAvatar">
<image v-if="avatarUrl!==null" :src="avatarUrl"></image>
<image v-else class="avatar" src="../../static/home/user.png" mode=""></image>
</button>
</div>
</template>
<script setup>
const onChooseAvatar = (e) => {
avatarUrl.value = e.detail.avatarUrl
uni.getFileSystemManager().saveFile({
tempFilePath: e.detail.avatarUrl,
success: (res) => {
uni.uploadFile({//传到服务器
url: '自己的上传接口'
filePath: res.savedFilePath,
name: 'file',
formData: {
},
success: (res) => {
}
});
}
})
}
</script>