uploadFile上传图片

396 阅读1分钟

使用了uview中的<u-upload/>组件,通过fileList默认展示了一个网络图片地址

<u-upload :fileList="fileList1" @afterRead="afterRead" @delete="deletePic" name="1" multiple :maxCount="9" ></u-upload>

const fileList1 = ref([
    {url:'https://img2.doubanio.com/view/subject/m/public/s33951431.jpg'}
])

问题:新增的图片上传没有问题,但是对于默认展示的图片上传会报错

uploadFile:fail createUploadTask:fail file not found

没有好好看官方文档,文档写了,uni.uploadFile只是将本地资源上传到指定服务器,而非网络资源

zh.uniapp.dcloud.io/api/request…

image.png

解决:使用uni.downloadFile(OBJECT)

zh.uniapp.dcloud.io/api/request…

image.png

// 将请求过来的网络资源图片转化为本地临时路径
uni.downloadFile({
    url:"https://img2.doubanio.com/view/subject/m/public/s33951431.jpg",
    success({tempFilePath}) {
        fileList1.value.push({
            url:tempFilePath,
            name:'default'
        })
    }
})