我封装了element-plus中的form的组件,代码如下: // TagSelectItem.vue import { onMounted, ref } from "vue"; import { TagApi } from "@/api/project"; import { TagGroupApiProps } from "@/types/project"; const props = defineProps({ modelValue: { required: true, type: [Number, String, Array, Array] }, tagLists: { required: false, type: Array, default: [] }, multiple: { required: false, type: Boolean, default: true }, showLabel: { required: false, type: Boolean, default: true }, prop: { required: false, type: String, default: "tag_ids" }, maxCollapseTags: { required: false, type: Number, default: 7 } }); const emits = defineEmits(["update:modelValue", "click"]); const select = (value: number[]) => { emits("update:modelValue", value); emits("click", value); }; const lists = ref([]); onMounted(async () => { if (props.tagLists.length !== 0) { lists.value = props.tagLists; } else { lists.value = await TagApi.select(); } }); 使用组件: 默认是展示标签 通过show-label 隐藏 el-form-item 为了不显示 `el-form-item`,``的代码写了一遍,又复制了一遍。 请教下有没有啥好的办法,可以控制 `el-form-item` 的隐藏与展示,同时让``的代码只写一遍? 还有就是,组件这样写有没有不合理的地方。 欢迎指正,谢谢。