html52.com
我爱小程序-开发者交流社区

wx:for渲染控制个数

问题模块
API和组件

请问用wx:for列表渲染如何限制一次渲染的个数,比如一共有10个对象,页面完成加载时先渲染5个,等用户触发上拉事件后再渲染后5个对象。

网友回复

下雨天:

下雨天:请问楼上,我本来有10条数据,但是手机上显示5条就满屏了,后面几条也没有显示出来是为什么呢???屏幕上拉都没有显示出来,请教一下。

请问楼上,我本来有10条数据,但是手机上显示5条就满屏了,后面几条也没有显示出来是为什么呢???屏幕上拉都没有显示出来,请教一下。

maq:

想想办法嘛……

<block wx:for="{{list}}">
    <view hidden="{{index >= showLimit}}">
        ...
    </view>
</block>
onReachBottom: function() {
    var that = this;
    this.setData({
       showLimit: that.data.showLimit + 5
   });
}

这样就可以了嘛。

irrational:

那如果我有20个对象,每次加载5个对象,就实现不了了,只能第一次显示5个对象,然后第二次就直接把所有对象都显示出来了

maq:

修改 showAll 这个属性值就可以控制超过 5 的那些对象是否显示。

onReachBottom: function() {

    this.setData({

       showAll: true

   });

}


irrational:

但是这个方法好像不能用onReachBottom动态修改他显示的个数啊

maq:
<block wx:for="{{list}}">
    <view hidden="{{index >= 5 && !showAll}}">
        ...
    </view>
</block>


评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

真正的个人免签约支付接口

云免签H5支付