vue3中element-puls表格的封装和复用

父组件使用v-bind="data2" 向子组件传的数据

生命一个变量,变量为对象,将需要的内容传给子组件

// 定义data2

const data1={

// 数据的内容

tableData : [

{

date: '2016-05-03',

name: 'Tom',

address: 'No. 189, Grove St, Los Angeles',

},

{

date: '2016-05-02',

name: 'Tom',

address: 'No. 189, Grove St, Los Angeles',

},

{

date: '2016-05-04',

name: 'Tom',

address: 'No. 189, Grove St, Los Angeles',

},

{

date: '2016-05-01',

name: 'Tom',

address: 'No. 189, Grove St, Los Angeles',

},

]

}

子组件通过

// defineProps 获取父组件传过来的参数

import { defineProps } from 'vue';

// 获取到父组件传过来的tableData

const props=defineProps({tableData: {type: Array, default: []}})

comont.vue(封装的表格)

复制代码
<template>
<el-table :data="tableData" style="width: 100%">
    <el-table-column prop="date" label="Date" width="180" />
    <el-table-column prop="name" label="Name" width="180" />
    <el-table-column prop="address" label="Address" />
  </el-table>
</template>
<script lang='ts' setup>
// defineProps 获取父组件传过来的参数
import { defineProps } from 'vue';

// 获取到父组件传过来的tableData
const props=defineProps({tableData: {type: Array, default: []}})


</script>
<style lang='scss' scoped>

</style>

about.vue(使用封装的第一个页面)

复制代码
<template>
     <!-- v-bind="data2" 向子组件传的数据 -->
    <comont v-bind="data1"></comont>
    

</template>
<script lang='ts' setup>
import comont from './comont.vue';
// 定义data2
const data1={
    // 数据的内容
    tableData : [
  {
    date: '2016-05-03',
    name: 'Tom',
    address: 'No. 189, Grove St, Los Angeles',
  },
  {
    date: '2016-05-02',
    name: 'Tom',
    address: 'No. 189, Grove St, Los Angeles',
  },
  {
    date: '2016-05-04',
    name: 'Tom',
    address: 'No. 189, Grove St, Los Angeles',
  },
  {
    date: '2016-05-01',
    name: 'Tom',
    address: 'No. 189, Grove St, Los Angeles',
  },
]

}
</script>
<style lang='scss' scoped>

</style>

home.vue(使用封装的第二个页面)

复制代码
<template>
    <!-- v-bind="data2" 向子组件传的数据 -->
    <comont v-bind="data2"></comont>


   
</template>
<script lang='ts' setup>
import comont from './comont.vue';

// 定义data2
const data2={
    // 数据的内容
    tableData : [
  {
    date: '2016',
    name: '小狗',
    address: '小狗狗',
  },
  {
    date: '2016',
    name: '大狗狗',
    address: '大狗狗',
  },
  {
    date: '2016',
    name: '小猪',
    address: '小猪',
  },
  {
    date: '1200',
    name: '小雨',
    address: '小雨',
  },
]

}

</script>
<style lang='scss' scoped>

</style>
相关推荐
小高0071 分钟前
🤔函数柯里化:化繁为简的艺术与实践
前端·javascript·面试
却尘4 分钟前
React useMemo 依赖陷阱:组件重挂载,状态无限复原
前端·javascript·react.js
Asort8 分钟前
JavaScript 从零开始(三):浏览器控制台与VS Code协同工作环境搭建详解
前端·javascript
葡萄城技术团队29 分钟前
浏览器为啥要对 JavaScript 定时器“踩刹车”?
javascript
m0_616188491 小时前
el-table的隔行变色不影响row-class-name的背景色
前端·javascript·vue.js
zheshiyangyang1 小时前
Vue3组件数据双向绑定
前端·javascript·vue.js
大翻哥哥2 小时前
Python上下文管理器进阶指南:不仅仅是with语句
前端·javascript·python
Monly212 小时前
Vue:下拉框多选影响行高
前端·javascript·vue.js
小桥风满袖2 小时前
极简三分钟ES6 - ES8中对象扩展
前端·javascript
武昌库里写JAVA3 小时前
Mac下Python3安装
java·vue.js·spring boot·sql·学习