uni-app table表格插件

发布于 1周前 作者 vueper 来自 Uni-App

uni-app table表格插件

实现一款table表格插件,需求:

  1. 表格内容部分折叠
  2. 表格内容实现增删改查

image image image


2 回复

在uni-app中,虽然原生组件并没有直接提供表格(table)组件,但我们可以通过组合使用<view><text>等组件来自定义实现表格效果,或者使用一些第三方插件。这里我将展示一个简单的自定义表格实现代码示例,以及如何使用一个比较流行的uni-app表格插件(如uView UI中的u-table组件)。

自定义表格实现

以下是一个简单的自定义表格实现示例:

<template>
  <view class="table">
    <view class="table-header">
      <view class="table-cell" v-for="(header, index) in headers" :key="index">{{ header }}</view>
    </view>
    <view class="table-body">
      <view class="table-row" v-for="(row, rowIndex) in data" :key="rowIndex">
        <view class="table-cell" v-for="(cell, cellIndex) in row" :key="cellIndex">{{ cell }}</view>
      </view>
    </view>
  </view>
</template>

<script>
export default {
  data() {
    return {
      headers: ['Name', 'Age', 'Gender'],
      data: [
        ['Alice', 25, 'Female'],
        ['Bob', 30, 'Male'],
        ['Charlie', 35, 'Male']
      ]
    };
  }
};
</script>

<style>
.table {
  width: 100%;
  border-collapse: collapse;
}
.table-header, .table-row {
  display: flex;
}
.table-cell {
  border: 1px solid #ccc;
  padding: 8px;
  text-align: left;
}
</style>

使用uView UI的u-table组件

如果你希望使用现成的表格组件,可以考虑集成uView UI。首先,确保你已经安装了uView UI,并在项目中进行了配置。

然后,你可以这样使用u-table组件:

<template>
  <u-table :columns="columns" :data="tableData"></u-table>
</template>

<script>
export default {
  data() {
    return {
      columns: [
        { title: 'Name', key: 'name' },
        { title: 'Age', key: 'age' },
        { title: 'Gender', key: 'gender' }
      ],
      tableData: [
        { name: 'Alice', age: 25, gender: 'Female' },
        { name: 'Bob', age: 30, gender: 'Male' },
        { name: 'Charlie', age: 35, gender: 'Male' }
      ]
    };
  }
};
</script>

在这个例子中,u-table组件简化了表格的渲染工作,你只需提供列定义和数据即可。这种方式更加简洁和高效,特别是在处理复杂表格时。

回到顶部