Vue3 封装 Element Plus el-tree-select 组件,使用 v-bind='$attrs' 实现属性传递
当使用<script setup>语法时,我们可以使用v-bind='$attrs'来传递所有父组件中未被props声明的属性,实现对Element Plus的el-tree-select的封装。
下面是一个示例代码:
<template>
<el-tree-select v-bind='$attrs' :data='data' v-model='selectedKeys'></el-tree-select>
</template>
<script setup>
import { ElTreeSelect } from 'element-plus';
const data = [
{
label: 'Node1',
children: [
{
label: 'ChildNode1'
},
{
label: 'ChildNode2'
}
]
},
{
label: 'Node2',
children: [
{
label: 'ChildNode3'
},
{
label: 'ChildNode4'
}
]
}
];
const selectedKeys = [];
</script>
在上面的示例中,我们使用<el-tree-select v-bind='$attrs' :data='data' v-model='selectedKeys'></el-tree-select>来渲染el-tree-select组件,并且将父组件中的所有未被props声明的属性通过v-bind='$attrs'传递给el-tree-select。
需要注意的是,这种写法需要在Vue 3.2.20+版本中才能使用。如果你的Vue版本低于此,请先升级Vue版本。
原文地址: https://www.cveoy.top/t/topic/bNyH 著作权归作者所有。请勿转载和采集!