From dc52add9ee3e7f6a4642996bbe3851f0498f90d4 Mon Sep 17 00:00:00 2001 From: sight <1453017105@qq.com> Date: Thu, 22 Sep 2022 11:55:25 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B(component):=20[cascader]=20?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D=20trigger?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package/component/src/component/cascader/index.vue | 14 ++++++++++---- package/component/src/component/tagInput/index.vue | 14 ++++++++++++-- 2 files changed, 22 insertions(+), 6 deletions(-) diff --git a/package/component/src/component/cascader/index.vue b/package/component/src/component/cascader/index.vue index 6a08cf71..cb5c9ba0 100644 --- a/package/component/src/component/cascader/index.vue +++ b/package/component/src/component/cascader/index.vue @@ -5,6 +5,7 @@ > | null; modelValue?: string; @@ -82,6 +86,7 @@ export interface LayCascaderProps { replaceFields?: { label: string; value: string; children: string }; allowClear?: boolean; size?: "lg" | "md" | "sm" | "xs"; + trigger: DropdownTrigger | DropdownTrigger[] } const props = withDefaults(defineProps(), { options: null, @@ -91,6 +96,7 @@ const props = withDefaults(defineProps(), { onlyLastLevel: false, allowClear: false, size: "md", + trigger: "click", replaceFields: () => { return { label: "label", @@ -112,9 +118,9 @@ watch( } ); watch( - ()=>props.modelValue, - ()=>{ - if(props.modelValue===null||props.modelValue===''){ + () => props.modelValue, + () => { + if (props.modelValue === null || props.modelValue === "") { onClear(); } } @@ -274,7 +280,7 @@ const dropDownDisabled = ref(false); //清除事件 const onClear = () => { - displayValue.value=''; + displayValue.value = ""; dropDownDisabled.value = true; let arr = JSON.parse(JSON.stringify(treeData.value)); for (let index = 0; index < arr.length; index++) { diff --git a/package/component/src/component/tagInput/index.vue b/package/component/src/component/tagInput/index.vue index 2107d0d7..d8bafe5b 100644 --- a/package/component/src/component/tagInput/index.vue +++ b/package/component/src/component/tagInput/index.vue @@ -62,7 +62,12 @@ const tagData = useVModel(props, "modelValue", emit, { deep: true, defaultValue: [] as TagData[], }); -const tagProps = reactiveOmit(props.tagProps ?? {}, 'closable','size', 'disabled') +const tagProps = reactiveOmit( + props.tagProps ?? {}, + "closable", + "size", + "disabled" +); const computedTagData = computed(() => { if (!tagData.value) return; @@ -199,7 +204,12 @@ defineExpose({ v-for="(item, index) of computedTagData" :key="`${item}-${index}`" > - + {{ item }}