微信小程序如何自定义table组件


Posted in Javascript onJune 29, 2019

背景

最近想要捣鼓一个自己的小程序,其中数据展示部分比较多,想用table来做展示,但是微信小程序并没有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地址

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
fix-ie5.js扩展在IE5下不能使用的几个方法
Aug 20 Javascript
JavaScript CSS 修改学习第四章 透明度设置
Feb 19 Javascript
ajax请求get与post的区别总结
Nov 04 Javascript
table行随鼠标移动变色示例
May 07 Javascript
让人蛋疼的JavaScript语法特性
Sep 30 Javascript
JS获取网页图片name属性的方法
Apr 01 Javascript
javascript定义类和类的实现实例详解
Dec 01 Javascript
Bootstrap进度条组件知识详解
May 01 Javascript
vuex中使用对象展开运算符的示例
Sep 25 Javascript
Vue绑定用户接口实现代码示例
Nov 04 Javascript
JS hasOwnProperty()方法检测一个属性是否是对象的自有属性的方法
Jan 29 Javascript
微信小程序 根据不同用户切换不同TabBar
Apr 21 Javascript
微信小程序如何调用图片接口API并居中显示
Jun 29 #Javascript
微信小程序如何调用json数据接口并解析
Jun 29 #Javascript
pm2启动ssr失败的解决方法
Jun 29 #Javascript
localstorage实现带过期时间的缓存功能
Jun 28 #Javascript
vue分页器组件编写方法详解
Jun 28 #Javascript
Vue分页器实现原理详解
Jun 28 #Javascript
vue实现分页栏效果
Jun 28 #Javascript
You might like
Session的工作方式
2006/10/09 PHP
PHP分页函数代码(简单实用型)
2010/12/02 PHP
手把手教你打印出PDF(关于fpdf的简单应用)
2013/06/25 PHP
PHP中常用的转义函数
2014/02/28 PHP
Laravel框架学习笔记之批量更新数据功能
2019/05/30 PHP
JavaScript中为元素加上name属性的方法
2011/05/09 Javascript
解析js中获得父窗口链接getParent方法以及各种打开窗口的方法
2013/06/19 Javascript
Node.js中HTTP模块与事件模块详解
2014/11/14 Javascript
JavaScript删除数组元素的方法
2015/03/20 Javascript
js字符串操作方法实例分析
2015/05/06 Javascript
JS如何判断json是否为空
2016/07/06 Javascript
ajax实现动态下拉框示例
2017/01/10 Javascript
JS跨域请求外部服务器的资源
2017/02/06 Javascript
js获取元素的偏移量offset简单方法(必看)
2017/07/05 Javascript
利用JS实现scroll自定义滚动效果详解
2017/10/17 Javascript
layui上传图片到服务器的非项目目录下的方法
2019/09/26 Javascript
基于Nuxt.js项目的服务端性能优化与错误检测(容错处理)
2019/10/23 Javascript
vue 实现动态路由的方法
2020/07/06 Javascript
Python 微信之获取好友昵称并制作wordcloud的实例
2019/02/21 Python
Python字典常见操作实例小结【定义、添加、删除、遍历】
2019/10/25 Python
wxPython电子表格功能wx.grid实例教程
2019/11/19 Python
python实现根据给定坐标点生成多边形mask的例子
2020/02/18 Python
python GUI库图形界面开发之PyQt5 Qt Designer工具(Qt设计师)详细使用方法及Designer ui文件转py文件方法
2020/02/26 Python
Django ModelForm操作及验证方式
2020/03/30 Python
python collections模块的使用
2020/10/16 Python
科颜氏美国官网:Kiehl’s美国
2017/01/31 全球购物
英国独特的时尚和生活方式品牌:JOY
2018/03/17 全球购物
Champion澳大利亚官网:美国冠军运动服装
2018/05/07 全球购物
市场营销专科应届生求职信
2013/11/24 职场文书
2014年物资管理工作总结
2014/12/02 职场文书
二年级语文上册复习计划
2015/01/19 职场文书
新郎父亲婚礼致辞
2015/07/27 职场文书
高三语文教学反思
2016/02/16 职场文书
2019个人工作总结
2019/06/21 职场文书
让人瞬间清醒的句子,句句经典,字字如金
2019/07/08 职场文书
Nginx进程调度问题详解
2021/09/25 Servers