diff --git a/src/views/videoCommunication/index.vue b/src/views/videoCommunication/index.vue index e19e2d8..46f8445 100644 --- a/src/views/videoCommunication/index.vue +++ b/src/views/videoCommunication/index.vue @@ -267,9 +267,29 @@ export default { from_history: 0, room_id: this.room_id, }) - .then(() => { + .then((res) => { this.$message.success("成功加入会议"); this.room_id = ""; + // 修复:转成数字再匹配 + 增加兜底判断 + const firstNum = Number(String(res.data.room_id)[0]); + const targetMode = this.meetingModes.find( + (item) => item.type === firstNum + ); + // 兜底:没有匹配到则提示并终止跳转 + if (!targetMode) { + this.$message.error("未匹配到对应会议模式"); + this.loading = false; + return; + } + // 正常跳转 + this.$router.push({ + name: targetMode.routeName, + query: { + consultation_id: 0, + from_history: 0, + room_id: res.data.room_id, + }, + }); }) .catch(() => { this.$message.error("入会失败,请检查口令是否正确");