微信小程序 image組件binderror使用例子與js中的onerror區(qū)別
微信小程序image組件binderror使用例子(對應(yīng)html、js中的onerror)
官方文檔
binderror | HandleEvent | 當(dāng)錯誤發(fā)生時,發(fā)布到 AppService 的事件名,事件對象event.detail = {errMsg: 'something wrong'} |
在微信小程序開發(fā)中,我們使用列表包含圖片,如果這個圖片鏈接404錯誤,那么我們應(yīng)該給它提供一個默認(rèn)的友好URL地址。html和js中使用onerror事件就可以了
<img src="image.gif" onerror="this.src='https:w.chesudi.com/Public/web/img/onerrorcar.png'" />
微信小程序image組件沒提供onerror事件,提供了一個binderror事件來代替。
如果圖片鏈接404,就會觸發(fā)這個binderror事件,我們在綁定的事件里修改對應(yīng)的數(shù)據(jù)源就好了,如下
.wxml文件
<image class="carlist_img" src="{{item.img}}" binderror="binderrorimg" data-errorimg="{{index}}"></image>
.js文件
binderrorimg:function(e){ var errorImgIndex= e.target.dataset.errorimg //獲取循環(huán)的下標(biāo) var imgObject="carlistData["+errorImgIndex+"].img" //carlistData為數(shù)據(jù)源,對象數(shù)組 var errorImg={} errorImg[imgObject]="https://w.chesudi.com/Public/web/img/onerrorcar.png" //我們構(gòu)建一個對象 this.setData(errorImg) //修改數(shù)據(jù)源對應(yīng)的數(shù)據(jù) }
易錯點:this.setData({"carlistData["+errorImgIndex+"].img":對象})類似這樣的就不正確了
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關(guān)文章
關(guān)于js typeof 與 instanceof 判斷數(shù)據(jù)類型區(qū)別及開發(fā)使用
我們經(jīng)常會遇到判斷一個變量的數(shù)據(jù)類型或該變量是否為空值的情況,你是如何去選擇判斷類型操作符的?本文來記錄一下我們開發(fā)人員必須掌握關(guān)于 typeof 和 instanceof 的知識點及在開發(fā)中的使用建議,同時在面試過程中也經(jīng)常會遇到這樣的問題,需要的朋友可參考下文章內(nèi)容2021-10-10PerformanceObserver自動獲取首屏?xí)r間實現(xiàn)示例
今天給大家介紹一個非常好用的瀏覽器api:?PerformanceObserver?,?我們可以用它來獲取首屏、白屏的時間,就不用再麻煩地手動去計算了2022-07-07原生js實現(xiàn)鼠標(biāo)滑過播放音符方法詳解
本文使用原生js的AudioContext接口實現(xiàn)一個劃過菜單播放天空之城的鼠標(biāo)特效,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-08-08reduce探索lodash.reduce實現(xiàn)原理解析
這篇文章主要為大家介紹了reduce探索lodash.reduce實現(xiàn)原理示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02JS代理對象Proxy初體驗簡單的數(shù)據(jù)驅(qū)動視圖
這篇文章主要為大家介紹了JS代理對象Proxy初體驗簡單的數(shù)據(jù)驅(qū)動視圖,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-08-08