视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
微信小程序如何自定义table组件
2020-11-27 21:54:14 责编:小采
文档


背景

最近想要捣鼓一个自己的小程序,其中数据展示部分比较多,想用table来做展示,但是微信小程序并没有table组件,于是就自己动手捣鼓了一个,勉强能用。

可以看看效果:

etable使用介绍

etable的使用很简单,分为 引入、使用、配置等3个阶段

1、引入

首先在要使用的页面中的json文件中配置如下:

{
"usingComponents": {
"etable" : "/compenents/etable/etable"
}
}

2、使用

在wxml页面需要用到的地方使用,如下:

<view style='padding : 10rpx;'>
<etable config="{{config}}"></etable>
</view>

3、配置

配置阶段主要配置config这个对象,这个对象中有这么几个属性,分别是

  • content --etable数据,数组类型,必填
  • titles --etable头部标题,数组类型,必填
  • props --etable每一列对应的数据的key值,
  • columnWidths --etable 每一列的列宽,值类型使用rpx,注意:(titles,props,columnWidths这3个数组的长度需保持一致)
  • border --etable 是否有边框,Boolean类型,默认true
  • stripe --etable 是否斑马纹,Boolean类型,默认true
  • headbgcolor --etable 标题栏的背景颜色,String类型,默认#ffffff(即白色)
  • 如下示例代码:

    /**
    * 页面的初始数据
    */
    data: {
    config:{
    content :[],
    titles: ['id', '名字', '年龄', '学校'],
    props : ['id', 'name', 'age', 'school'],
    columnWidths: ['80rpx', '140rpx', '120rpx','390rpx'],
    border: true,
    stripe : true,
    // headcolor : '#dddddd'
    }
    },
    
    onload:function(){
    // 模拟数据
    let content = [
    {
    id: 1,
    name: 'pxh',
    age: 13,
    school: '暨南大学计算机'
    },
    {
    id: 2,
    name: 'ap',
    age: 12,
    school: '中山大学'
    },
    {
    id: 3,
    name: 'cf',
    age: 12,
    school: '华南农业大学'
    },
    {
    id: 4,
    name: '林江',
    age: 14,
    school: '上海交通大学'
    }
    ]
    let that = this
    // 此处是模拟网络请求
    setTimeout(function(){
    that.setData({
    'config.content' : content
    })
    },2000)
    }

    etable的stripe和border背景颜色修改

    想要调整斑马纹的背景颜色,找到etable/etable.wxss中的39-45行,如下,可以自行修改

    .etable-content-row-bg1{
    background-color: #ffffff;
    }
    .etable-content-row-bg2{
    background-color: #efefef;
    }

    想要调整border的颜色,需要在etable.etable.wxss中分别找到etable-header-column-border 和 etable-content-column-border这2个类,然后修改对应的颜色值即可,此处不多说了。

    组件的github地址

    下载本文
    显示全文
    专题