今天在寫一個(gè)需求如下:
1、用戶發(fā)送token到服務(wù)器認(rèn)證
2狠怨、服務(wù)器返回banner圖片數(shù)據(jù)约啊。
3、如果失敗佣赖,就顯示默認(rèn)占位圖恰矩。
按照我用jq寫ajax的理解,那就是error()時(shí) 顯示占位圖憎蛤,在wx小程序里是fail()方法外傅。
我在服務(wù)器上關(guān)閉了驗(yàn)證接口,此時(shí)會(huì)返回404蹂午,按道理來(lái)說(shuō)會(huì)觸發(fā)fail回調(diào)栏豺,可是,什么顯示也沒(méi)有豆胸。奥洼。
百思不得其解,網(wǎng)上回答說(shuō) 404 403等代碼無(wú)法觸發(fā)fail回調(diào)晚胡。于是我刪除了fail回調(diào)灵奖,換了一種方法來(lái)解決。
代碼如下:
//index.js
//獲取應(yīng)用實(shí)例
const app = getApp()
Page({
data: {
token: '',
bnrUrls: ''
},
onLoad() {
var that = this;
this.setData({
token: wx.getStorageSync('yerlLocalToken') //獲取localstorage中的token并設(shè)置
});
wx.request({
url: app.globalApi.getIndexBanners,
method:'POST',
data:{
token:this.data.token
},success(res){
//任何情況下估盘,只要返回的數(shù)據(jù)不包含content字段瓷患,則顯示默認(rèn)占位圖片
if (!res.data.content){
that.setData({
bnrUrls: ['占位圖地址']
})
}else{
//將返回的圖片列表賦值給bnrUrls
that.setData({
bnrUrls: res.data.content
})
}
}
});
}
})
我把服務(wù)器返回的圖片列表放到content中,無(wú)論成功或失敗遣妥,都判斷一下content是否存在擅编,如果存在就正常顯示,不存在就顯示默認(rèn)占位圖箫踩。