uniapp上传图片
ps:简单易懂,直接cv
<view class="avatar-box" v-if="!mp_is_new" @click.stop='uploadpic'>
<image :src="userInfo.avatar"></image>
</view>
<button v-else class="avatar-box" @click="ChooseAvatar">
<image :src="userInfo.avatar"></image>
</button>
//触发点击事件
ChooseAvatar({
success = null,
fail = null,
count = 1, //设置上传数量
sourceType=['album','camera']//类型
}) {
uni.chooseImage({
count,
sourceType,
success: (res) => {
uni.uploadFile({
url: 'http://www.qq.com/api/upload/image',//上传路径
filePath: res.tempFilePaths[0],
name: 'file',
header: { //携带token,不同的地方,不同的携带方式
'Authori-zation': 'Bearer' + ' ' + uni.getStorageSync('token')
},
success: (res) => {
// 成功之后的操作
// console.log("res: ",res);
let data = JSON.parse(res.data)
console.log("data: ",data);
// this.shortUrl = data.data.url;
// this.uploadAvatar = data.data.fullurl;
//上面需要定义变量来接收,上传完成的照片
this.userInfo.avatar = data.data.url
success && success(data.data)
},
fail: (err) => {
this.$toast("上传失败")
fail && fail(err)
}
})
},
fail(err) {
fail && fail(err)
}
})
},