小程式退款返回介面的一個坑
阿新 • • 發佈:2018-11-26
最近,做小程式退款的時候,前端點選退款,返回到原來的介面是,資料重新整理了,但是顯示的還是原來的資料。原因在於,前端首先要給後臺發請求,後臺再給微信端發請求,成功之後,在把結果傳給前端,同時重新整理訂單狀態,問題在於重新整理會有延遲。導致前端返回的時候,資料還是原來的資料。解決方法也很簡單,返回介面的時候加個延遲請求
//取消訂單
cannelorder: function() {
wx.request({
url: app.globalData.urls + app.globalData.tuikuan,
data: {
orderNum: this.data.order,
refundReason: '暫無'
},
header: {
'content-type': 'application/json' // 預設值
},
success: (res) => {
if (res.data.error == 0) {
wx.showToast({
title: '取消中!',
icon: "loading",
duration: 3500
})
setTimeout(function () {
//獲取頁面棧
let pages = getCurrentPages();
//上一個頁面例項物件
let prepage = pages[pages.length - 2];
//把得到的值回撥給上個介面
app.globalData.statusorder = "shuaxins", //返回的介面根據此值判斷重新整理介面。
//返回到上一個介面
wx.navigateBack({})
}, 4000) //延遲時間 這裡是4秒
}
}
})
},