一个 适用 vue3 ts h5移动端 table组件
在Vue 3中,你可以使用Composition API和TypeScript来创建一个移动端的Table组件。以下是一个简单的示例:
<template>
<table>
<thead>
<tr>
<th v-for="header in headers" :key="header">{{ header }}</th>
</tr>
</thead>
<tbody>
<tr v-for="row in rows" :key="row.id">
<td v-for="cell in row" :key="cell">{{ cell }}</td>
</tr>
</tbody>
</table>
</template>
<script lang="ts">
import { defineComponent, ref } from 'vue';
export default defineComponent({
name: 'MobileTable',
setup() {
const headers = ref(['Column 1', 'Column 2', 'Column 3']);
const rows = ref([
{ id: 1, cells: ['Row 1 Cell 1', 'Row 1 Cell 2', 'Row 1 Cell 3'] },
{ id: 2, cells: ['Row 2 Cell 1', 'Row 2 Cell 2', 'Row 2 Cell 3'] },
// ...
]);
return { headers, rows };
},
});
</script>
<style scoped>
table {
width: 100%;
border-collapse: collapse;
}
th, td {
border: 1px solid #ddd;
padding: 8px;
text-align: left;
}
th {
background-color: #f2f2f2;
}
</style>
这个组件使用了Vue 3的Composition API和TypeScript。它有两个reactive状态:headers
和rows
。headers
是一个包含表头的数组,而rows
是一个包含对象的数组,每个对象包含一行数据和一个唯一的ID。
在模板中,headers
用于创建表头行,而rows
用于创建表格的主体部分。每个单元格使用v-for
来遍历相应的数组项。
CSS部分用于提供表格的基本样式。这个示例提供了一个简单的移动端表格组件,你可以根据自己的需求进行扩展和定制。
评论已关闭