微信小程序的两个问题
发布于 6 年前 作者 guiyingsong 17753 次浏览 来自 问答

1、官方例子中有用到wx:for-items,这和wx:for有什么区别?没找到相关wx:for-items的资料。我试过改成wx:for运行一模一样。

2、我们都知道html的img组件自带一个onerror图片出错事件处理机制,写法就如同js一样。语法如下:

     <img src=“xxx” onerror=“this.src=’./img/default.png’”/>

       但是,我尝试在小程序里的image组件也做这样的处理,却发现并不能实现,反而要提示APP-SERVICE-Engine错误信息。后来重新翻看文档,找到类似的事件处理binderror,文档支出可以通过event.detail打印出具体的出错信息,并没有给出出错后的具体解决方案。所以建议官方给我解决方案,尤其涉及到列表加载的时候,如何解决?

3 回复

谢谢楼上的回复,第一点我知道了,关于第二点,因为我实际情况是,src也是动态组装的图片,比如某一条新闻列表,id为i,则图片为http://xxxx:8080/demo/images/i.jpg,如果发现这个网络图片不存在,则使用默认的图片http://xxxx:8080/demo/images/j.jpg

  1. 只是简写

  2. <block wx:for="{{srcs}}"> 

    <image data-index="{{index}}" binderror="errorImage" src="{{src}}"></image>

    </block>

    js:

    errorImage:function(e){

    var index = e.currentTarget.dataset.index;//当前出错的图片位置

    this.data.srcs[index]//当前出错的图片

    }

1、一样的,wx:for是简写

2、<img src=’{{src}}’ binderror=“changesrc”/>     在js里实现一下changesrc就好了

回到顶部