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>
相关推荐
软件技术NINI14 小时前
html css js网页制作成品——敖瑞鹏html+css+js 4页附源码
javascript·css·html
程序员小寒14 小时前
Vue.js 为什么要推出 Vapor Mode?
前端·javascript·vue.js
白菜__14 小时前
去哪儿小程序逆向分析(酒店)
前端·javascript·爬虫·网络协议·小程序·node.js
前端老曹14 小时前
Jspreadsheet CE V5 使用手册(保姆版) 二
开发语言·前端·vue.js·学习
老华带你飞14 小时前
动物救助|流浪狗救助|基于Springboot+vue的流浪狗救助平台设计与实现(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·流浪动物救助平台
困惑阿三14 小时前
深入理解 JavaScript 中的(Promise.race)
开发语言·前端·javascript·ecmascript·reactjs
我命由我1234515 小时前
微信小程序 bind:tap 与 bindtap 的区别
开发语言·前端·javascript·微信小程序·小程序·前端框架·js
5335ld15 小时前
vue2 直播地址播放 兼容浏览器
前端·vue.js
克喵的水银蛇15 小时前
Flutter 布局实战:掌握 Row/Column/Flex 弹性布局
前端·javascript·flutter
哆啦A梦158815 小时前
60 订单页选择收货地址
前端·javascript·vue.js·node.js