解决微信小程序recycle-view使用百分比单位控制宽高时出现的内容溢出问题

recycle-view是微信小程序官方推出的一个经过优化的长列表组件,但是在使用百分比单位控制高宽时有个内容溢出问题,虽然它提供了height和width的参数可以设置宽高,但每次写列表都需要去js里获取宽高并设置是较为麻烦的,所以现在来着手解决使用百分比单位设置宽度时碰到的内容溢出问题。

先看看问题怎么复现:

1.先添加组件依赖:

{
  "usingComponents": {
    "recycle-view": "miniprogram-recycle-view/recycle-view",
    "recycle-item": "miniprogram-recycle-view/recycle-item"
  }
}

2.编写wxml:


  
    
      
        
          1234
        
      
    
  

wxss:

page {
  width: 100%;
  height: 100%;
}

3.查看界面

解决微信小程序recycle-view使用百分比单位控制宽高时出现的内容溢出问题_第1张图片

4.现在来说一下问题,首先是界面显示了一个基于recycleview的列表,然后他的父元素我给他设置了height:50%,按理来说这个列表的区域也应该是Page内容区域高度的50%,也就是和蓝色区域重合,但是他现在内容溢出了

这明显是不合理的,接下来是修复

1.打开miniprogram_npm/miniprogram-recycle-view/recycle-view.wxml,编辑最外层的view的style,直接改为height:100%;width:100%



  
    
      
    
    
      
    
    
      
      
        
      
      
    
    
      
    
  

2.打开miniprogram_npm/miniprogram-recycle-view/recycle-view.wxss,将:host{}删除或者注释

/* components/recycle-view/recycle-view.wxss */
/* :host {
  display: block;
  width: 100%;
} */

3.运行看看效果:

解决微信小程序recycle-view使用百分比单位控制宽高时出现的内容溢出问题_第2张图片

内容不溢出了,而且滚动效果也正常。

微信小程序代码片段(需要手动安装recycleview依赖):https://developers.weixin.qq.com/s/J3TFLYmQ71K1

你可能感兴趣的:(微信小程序,小程序)