小程序
小游戏
企业微信
微信支付
扫描小程序码分享
小程序的API都是异步的吗?是不是带success的都要一层一层往里面套?
2 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
是的,都会异步执行
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
//删除图片
const delFile = new Promise((reslove, reject) => { //删除图片
wx.cloud.deleteFile({
fileList: [this.data.customer.fileId],
success: res => {
console.log("1/删除图片")
reslove(res)
},
fail: err => {
reject(err)
}
})
delFile.then(res => { //上传图片
//上传图片
let fileName = app.globalData.openid + Date.now() + '.png'
wx.cloud.uploadFile({
cloudPath: fileName,
filePath: this.data.showImg,
console.log("2/上传图片")
return Promise.resolve(res)
return Promise.reject(err)
}).then(res => {
//保存信息
customerDb.add({
data: {
phone: this.data.customer.phone,
console.log('3/保存信息')
fial: err => {
console.log(err)
this.showMsg('提交成功')
wx.hideLoading()
}).catch(err => {
//删除图片 const delFile = new Promise((reslove, reject) => { //删除图片 //删除图片 wx.cloud.deleteFile({ fileList: [this.data.customer.fileId], success: res => { console.log("1/删除图片") reslove(res) }, fail: err => { reject(err) } }) }) delFile.then(res => { //上传图片 //上传图片 let fileName = app.globalData.openid + Date.now() + '.png' wx.cloud.uploadFile({ cloudPath: fileName, filePath: this.data.showImg, success: res => { console.log("2/上传图片") return Promise.resolve(res) }, fail: err => { return Promise.reject(err) } }) }).then(res => { //保存信息 customerDb.add({ data: { phone: this.data.customer.phone, }, success: res => { console.log('3/保存信息') return Promise.resolve(res) }, fial: err => { console.log(err) return Promise.reject(err) } }) }).then(res => { this.showMsg('提交成功') wx.hideLoading() }).catch(err => { wx.hideLoading() })
@
undefined 我重新发吧,感觉他自动把我代码删除了
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
是的,都会异步执行
希望的结果是:
1 删除图片
2 上传图片
3 保存信息
但我运行代码还
1 删除图片
3 保存信息
2 上传图片
这是什么原因?
//删除图片
const delFile = new Promise((reslove, reject) => { //删除图片
//删除图片
wx.cloud.deleteFile({
fileList: [this.data.customer.fileId],
success: res => {
console.log("1/删除图片")
reslove(res)
},
fail: err => {
reject(err)
}
})
})
delFile.then(res => { //上传图片
//上传图片
let fileName = app.globalData.openid + Date.now() + '.png'
wx.cloud.uploadFile({
cloudPath: fileName,
filePath: this.data.showImg,
success: res => {
console.log("2/上传图片")
return Promise.resolve(res)
},
fail: err => {
return Promise.reject(err)
}
})
}).then(res => {
//保存信息
customerDb.add({
data: {
phone: this.data.customer.phone,
},
success: res => {
console.log('3/保存信息')
return Promise.resolve(res)
},
fial: err => {
console.log(err)
return Promise.reject(err)
}
})
}).then(res => {
this.showMsg('提交成功')
wx.hideLoading()
}).catch(err => {
wx.hideLoading()
})
//删除图片 const delFile = new Promise((reslove, reject) => { //删除图片 //删除图片 wx.cloud.deleteFile({ fileList: [this.data.customer.fileId], success: res => { console.log("1/删除图片") reslove(res) }, fail: err => { reject(err) } }) }) delFile.then(res => { //上传图片 //上传图片 let fileName = app.globalData.openid + Date.now() + '.png' wx.cloud.uploadFile({ cloudPath: fileName, filePath: this.data.showImg, success: res => { console.log("2/上传图片") return Promise.resolve(res) }, fail: err => { return Promise.reject(err) } }) }).then(res => { //保存信息 customerDb.add({ data: { phone: this.data.customer.phone, }, success: res => { console.log('3/保存信息') return Promise.resolve(res) }, fial: err => { console.log(err) return Promise.reject(err) } }) }).then(res => { this.showMsg('提交成功') wx.hideLoading() }).catch(err => { wx.hideLoading() })
@
undefined 我重新发吧,感觉他自动把我代码删除了