ios11的swiper 部分图片不显示
发布于 6 年前 作者 yetao 1024 次浏览 来自 问答

   <swiper class="w-100 pos-ab h-100" style="z-index:99" wx:if="{{swiper}}" indicator-dots="{{swiper.dots}}" autoplay="{{swiper.autoplay}}"interval="{{swiper.interval}}" circular="true">

       <block wx:for="{{swiper.data}}" wx:key="image">

       <swiper-item>

           <navigator wx:if="{{item.url}}" url="{{item.url}}" open-type="{{item.openType}}">

               <image src="{{swiper.IMGROOT}}{{item.image}}" class="w-100" mode="widthFix" />

           navigator>

           <view wx:if="{{!item.url}}">

               <image src="{{swiper.IMGROOT}}{{item.image}}" class="w-100" mode="widthFix" />

           view>

       swiper-item>

       block>

   swiper>

ios11.0 以下的轮播图图片正常显示

ios11.0—ios11.2 的轮播图图片部分显示不出来


下图为 ios11.1

这问题重现几率不稳定,有时候进入页面重现,有时候杀掉进程后重现,控制台没报错

9 回复

自从加上这个,正常的几率大了,但还是有几率出现 图片显示不出来

<swiper class=“w-100 pos-ab h-100” style=“z-index:99” wx:if="{{swiper}}" indicator-dots="{{swiper.dots}}" autoplay="{{swiper.autoplay}}" interval="{{swiper.interval}}" circular=“true”>

    <block wx:for="{{swiper.data}}" wx:key=“image”>

        <swiper-item>

            <navigator wx:if="{{item.url}}" url="{{item.url}}" open-type="{{item.openType}}">

                <image bindload=‘imageLoad’ data-index="{{index}}" data-dataname="{{swiper.dataName}}" style=’{{item.load==1?“will-change:transform”:""}}’ src="{{swiper.IMGROOT}}{{item.image}}" class=“w-100” mode=“widthFix” />

            </navigator>

            <view wx:if="{{!item.url}}">

                <image src="{{swiper.IMGROOT}}{{item.image}}" class=“w-100” mode=“widthFix” />

            </view>

        </swiper-item>

    </block>

</swiper>

function imageLoad(e){

    var index = e.currentTarget.dataset.index;

    var dataName = e.currentTarget.dataset.dataname;

    

    var changeData={};

    changeData[dataName+".data["+index+"].load"]=1;

    this.setData(changeData);

}

我也遇到此问题,swiper更新数据时空白,官方解决方案是?

这个问题很紧急啊,上周发帖了也是说我们看看就没有下文了,希望能跟进下@黄思程

上周的地址  

https://developers.weixin.qq.com/blogdetail?action=get_post_info&lang=zh_CN&token=318759354&docid=8089c6d4e7a57707dcc91d545bb37baf

应该是ios webview的渲染问题,请尝试在image bindload时给image加个will-change: transform试试

这个不是web-view啊,就是在小程序里,小程序的首页。我加上will-change试试

4楼正解

8楼demo

重现的小程序——万家出行

回到顶部