From 684da4132969f03a76416796e81667d8fe59e913 Mon Sep 17 00:00:00 2001
From: xyc <jc_xiong@hotmail.com>
Date: 星期一, 31 八月 2026 09:14:25 +0800
Subject: [PATCH] fix: 数据导入页 el-tabs 触发 Element UI 布局无限循环,挂载卡死导致浏览器无响应/菜单不高亮——改用 el-radio-group 按钮切换模块 + v-show 面板
---
traffic-audit-web/src/views/DataImport.vue | 13 +++++++++----
1 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/traffic-audit-web/src/views/DataImport.vue b/traffic-audit-web/src/views/DataImport.vue
index dd789fa..f4434b0 100644
--- a/traffic-audit-web/src/views/DataImport.vue
+++ b/traffic-audit-web/src/views/DataImport.vue
@@ -43,8 +43,12 @@
<div class="card-head">閫夋嫨绫诲瀷骞舵寕杞芥枃浠�
<span class="tip" style="float:right;line-height:24px">鍚勬ā鍧椾簰涓嶅奖鍝嶏細鍏堥�夌被鍨嬨�佹寕杞芥枃浠讹紝鍙�岀珛鍗冲鍏ャ�嶆垨銆屽姞鍏ラ槦鍒椼�嶇粺涓�鎵ц锛涗篃鍙湪涓嬫柟绮樿创鐩綍璺緞鐐广�屽鍏ヨ鐩綍銆嶏紝鏂囦欢澶归噷澶氫釜鏈堢殑 Excel 浼氭寜鏂囦欢鍚嶈嚜鍔ㄨ瘑鍒湀浠姐�佸垎鍒鍏ュ搴旀姤琛ㄦ湡</span>
</div>
- <el-tabs v-model="activeModule" class="module-tabs">
- <el-tab-pane v-for="g in groups" :key="g.key" :label="g.name" :name="g.key">
+ <div class="module-tabs-head">
+ <el-radio-group v-model="activeModule" size="small">
+ <el-radio-button v-for="g in groups" :key="g.key" :label="g.key">{{ g.name }}</el-radio-button>
+ </el-radio-group>
+ </div>
+ <div v-for="g in groups" :key="g.key" v-show="activeModule === g.key" class="module-tab-pane">
<div class="module-sel">
<el-select v-model="moduleSel[g.key]" placeholder="閫夋嫨瀵煎叆绫诲瀷" style="width:260px"
@change="onModuleChange(g.key)" clearable>
@@ -88,8 +92,7 @@
</div>
</div>
</div>
- </el-tab-pane>
- </el-tabs>
+ </div>
<div v-if="importType" class="type-info">
<div>妯℃澘锛歿{ templateName }}
<el-link v-if="templateUrl" type="primary" icon="el-icon-download" :underline="false"
@@ -775,4 +778,6 @@
.dir-empty { padding: 14px; font-size: 12px; color: #909399; text-align: center; }
.dir-files { margin-top: 8px; }
+.module-tabs-head { margin-bottom: 10px; }
+.module-tab-pane { min-height: 120px; }
</style>
--
Gitblit v1.9.1