diff --git a/src/pages-quick/components/Tabs/index.vue b/src/pages-quick/components/Tabs/index.vue index bc81081..4ba5e6a 100644 --- a/src/pages-quick/components/Tabs/index.vue +++ b/src/pages-quick/components/Tabs/index.vue @@ -61,8 +61,12 @@ const tabList = ref([]); // 处理Tab点击 const handleTabClick = (index) => { - if (activeIndex.value === index) return; + changeTabItem(index); +}; +// 支持 force 参数,强制触发(即使 index 与当前相同) +const changeTabItem = (index, force = false) => { + if (!force && activeIndex.value === index) return; activeIndex.value = index; emit("change", { @@ -70,7 +74,8 @@ const handleTabClick = (index) => { item: tabList.value[index], }); emit("update:modelValue", index); -}; +} + // 监听tabs变化 watch( @@ -114,6 +119,12 @@ const getCommodityTypePageList = async () => { } else { tabList.value = props.tabs; } + // 加载完成后强制选中第一个项并通知外部 + if (tabList.value && tabList.value.length > 0) { + changeTabItem(0, true); + } else { + changeTabItem(props.defaultActive, true); + } }; diff --git a/src/pages-quick/list.vue b/src/pages-quick/list.vue index 4e89d7c..e56da49 100644 --- a/src/pages-quick/list.vue +++ b/src/pages-quick/list.vue @@ -4,16 +4,16 @@