小程序不支持h5中的onerrorimg,只開放了binderror屬性,當(dāng)錯(cuò)誤發(fā)生時(shí),會(huì)發(fā)布到 AppService,事件對象event.detail = {errMsg: 'something wrong'}。 網(wǎng)上查了下,沒有什么好的解決方法,找了幾個(gè)案例結(jié)果都沒有實(shí)現(xiàn)想要的效果。 結(jié)合前邊看過的案例,大部分都是采用修改數(shù)據(jù)源將錯(cuò)誤圖片替換為默認(rèn)圖片的,但是有好多代碼都沒貼全,以致不好理解。 下面就根據(jù)自己遇到的情況對圖片為空、圖片路徑錯(cuò)誤的情況進(jìn)行了處理,相關(guān)代碼如下,相關(guān)數(shù)據(jù)都有說明: wxml:
說明: imgList: 圖片數(shù)據(jù)源列表,需要在data中定義初始數(shù)據(jù),或者從接口動(dòng)態(tài)獲取數(shù)據(jù); errorFunction: 圖片加載錯(cuò)誤綁定的事件,錯(cuò)誤圖片替換為默認(rèn)圖片主要在這里操作; data-errorimg: 錯(cuò)誤圖片索引數(shù)據(jù),需要在errorFunction中用以記錄錯(cuò)誤圖片對應(yīng)的位置; 如果圖片地址為空,是不會(huì)觸發(fā)binderror的,所以就直接對圖片地址做判斷,如果為空,則替換為默認(rèn)圖片。 js:
備注:使用這種方法,是需要將圖片數(shù)據(jù)源放在data中的,這樣才可以在 binderror 的事件中進(jìn)行數(shù)據(jù)的替換,不可以直接在wxml中調(diào)用接口的數(shù)據(jù)。 |
工作日 8:30-12:00 14:30-18:00
周六及部分節(jié)假日提供值班服務(wù)