js 回调函数的用法
简单例子:
function add(num1, num2, callback) { var sum = num1 + num2; callback(sum); } add(1, 2, function (sum) { console.log(sum); //=>3 }
vue 中用法:
methods: {
up(callback){ uni.uploadFile( { url: 'api/common/upload', filePath: this.USERINFO.avatar, name: 'file', header: { 'token': uni.getStorageSync('token') }, success: (res) => { // let data = JSON.parse(res.data) // console.log(data,990000) let a = data.data.fullurl // console.log(that.USERINFO.avatar,990000) // uni.setStorageSync('USERDATA',this.USERINFO) // callback(this.USERINFO.avatar) // console.log(this.USERINFO.avatar,33333) callback(a) } }) },
async formSubmit(){
await this.up( async(dataStatus) => {
console.log(dataStatus,999)
let param = {
username:this.USERINFO.username,
avatar:dataStatus,
mobile:this.USERINFO.mobile,
}
const { data } = await this.$api.user.settingsInfo(param)
if(data.code == 1){
this.$refs.uToast.show({
title: data.msg,
type: 'success'
})
uni.setStorageSync('USERDATA',this.USERINFO)
this.initData()
console.log(data,90906767);
}else{
this.$refs.uToast.show({
title: data.msg,
type: 'error'
})
}
})
}
},