更新记录
1.0.0(2023-07-07)
下载此版本
1.0.0
平台兼容性
App |
快应用 |
微信小程序 |
支付宝小程序 |
百度小程序 |
字节小程序 |
QQ小程序 |
HBuilderX 3.8.7 app-vue app-nvue |
× |
√ |
× |
× |
× |
× |
钉钉小程序 |
快手小程序 |
飞书小程序 |
京东小程序 |
鸿蒙元服务 |
× |
× |
× |
× |
× |
H5-Safari |
Android Browser |
微信浏览器(Android) |
QQ浏览器(Android) |
Chrome |
IE |
Edge |
Firefox |
PC-Safari |
√ |
√ |
√ |
√ |
√ |
× |
√ |
√ |
√ |
移动端表格插件table
介绍
本组件要解决问题包括
1.绑定数据data,就是表格的数据数组格式
2.表格对应的表头数组,数组格式
特别声明:本组件为简单组件,考虑到移动端不适合复杂表格的情况,未支持合并行列功能,后面根据实际情况看是否需要更新。
基本用法
<xpj-table
:data="data"
:header="header"
:height="400"
:fixed="true"
:firstFixed="true"
:border="true"
:stripe="true"
@row-click="clickRow"
:showActions="true"
@load-more="loadMoreItems"
>
<template #default="{ item }">
<button @click="editRow(item)">编辑</button>
<button @click="deleteRow(item)">删除</button>
<button @click="viewDetail(item)">查看详情</button>
</template>
</xpj-table>
<script>
export default {
data() {
return {
data: [ {
date: '2016-05-03',
name: '王小虎',
sex: '男',
age: '18',
address: '上海市普陀区金沙江路 1516 弄'
}, {
date: '2016-05-03',
name: '王小虎',
sex: '男',
age: '18',
address: '上海市普陀区金沙江路 1516 弄'
}, {
date: '2016-05-03',
name: '王小虎',
sex: '男',
age: '18',
address: '上海市普陀区金沙江路 1516 弄'
}, {
date: '2016-05-04',
name: '王小虎',
sex: '男',
age: '18',
address: '上海市普陀区金沙江路 1517 弄'
}, {
date: '2016-05-01',
name: '王小虎',
sex: '男',
age: '18',
address: '上海市普陀区金沙江路 1519 弄'
}, {
date: '2016-05-03',
name: '王小虎',
sex: '男',
age: '18',
address: '上海市普陀区金沙江路 1516 弄'
}, {
date: '2016-05-03',
name: '王小虎',
sex: '男',
age: '18',
address: '上海市普陀区金沙江路 1516 弄'
}, {
date: '2016-05-03',
name: '王小虎',
sex: '男',
age: '18',
address: '上海市普陀区金沙江路 1516 弄'
}, {
date: '2016-05-03',
name: '王小虎',
sex: '男',
age: '18',
address: '上海市普陀区金沙江路 1516 弄'
}, {
date: '2016-05-03',
name: '王小虎',
sex: '男',
age: '18',
address: '上海市普陀区金沙江路 1516 弄'
},{
date: '2016-05-04',
name: '王小虎',
sex: '男',
age: '18',
address: '上海市普陀区金沙江路 1517 弄'
}, {
date: '2016-05-01',
name: '王小虎',
sex: '男',
age: '18',
address: '上海市普陀区金沙江路 1519 弄'
},{
date: '2016-05-03',
name: '王小虎',
sex: '男',
age: '18',
address: '上海市普陀区金沙江路 1516 弄'
}],
header: [
{title: '姓名', prop: 'name', width: '100', align: 'left'},
{title: '性别', prop: 'sex', width: '100', align: 'left'},
{title: '年龄', prop: 'age', width: '100', align: 'center'},
{title: '日期', prop: 'date', width: '100', align: 'left'},
{title: '地址', prop: 'address', width: '200', align: 'left', overflow: true},
]
}
},
methods: {
clickRow(row) {
console.log(row, 'row');
},
loadMoreItems() {
// 请求数据逻辑
}
}
}
</script>
props属性
属性名 |
类型 |
默认值 |
字段说明 |
是否必填 |
data |
Array |
[] |
表格数据 |
true |
header |
Array |
[] |
表头数据 |
true |
height |
Number |
400 |
表格高度 |
如果设置了fixed则必填 |
firstFixed |
Boolean |
false |
第一列是否固定 |
false |
border |
Boolean |
false |
是否显示边框,默认有下边框 |
false |
stripe |
Boolean |
false |
是否隔行换色 |
false |
showActions |
showActions |
false |
是否显示操作栏 |
false,如果设置为true需要对应写入slot如模版中,样式自己定义 |
row-click |
function |
无 |
当前行点击事件 |
false |
load-more |
function |
无 |
向上滚动加载更多 |
false |
注意:
实际功能简单模仿了element 实现,header属性里面的字段功能跟element类似
属性名 |
说明 |
title |
表头标题 |
prop |
对应字段名称value值 |
width |
单元格宽度 |
align |
单元格对齐方式 |
overflow |
文字是否溢出隐藏 |