diff --git a/src/views/pages/login.vue b/src/views/pages/login.vue index 3508f8c..d25499d 100644 --- a/src/views/pages/login.vue +++ b/src/views/pages/login.vue @@ -121,6 +121,7 @@ const rules = { const login = ref(null); const maxLoginRepeatRequest = 60; //最大请求次数 const currentLoginRequest = ref(0); //当前请求次数 +const timer = ref(null); //定时器 const thirdPartyLogoInfoList = ref([ { @@ -220,34 +221,38 @@ const thirdLogin = async (type) => { ElMessage.error("获取登录地址失败!请稍后再试"); return; } + //清除定时器,防止多次点击登录按钮 + if (timer.value) { + clearInterval(timer.value); + } //获取登录状态每2秒请求一次 - let timer = setInterval(async () => { + timer.value = setInterval(async () => { currentLoginRequest.value++; if (currentLoginRequest.value > maxLoginRepeatRequest) { - clearInterval(timer); + clearInterval(timer.value); ElMessage.error("登录超时,请重新登录!"); return; } let statusResp = await getThirdPartyLoginStatus({uuid: uuid}); if (statusResp["code"] !== 0) { ElMessage.error("获取登录状态失败!请稍后再试"); - clearInterval(timer); + clearInterval(timer.value); return; } if(statusResp["code"] === 9){ ElMessage.error("服务器错误,请稍后再试!"); - clearInterval(timer); + clearInterval(timer.value); return; } if(statusResp["data"]["status"] === 163) { ElMessage.error("该账号未绑定,请先绑定账号!"); - clearInterval(timer); + clearInterval(timer.value); return; } let status = statusResp["data"]; if(status["status"] === 0) { //登录成功 - clearInterval(timer); + clearInterval(timer.value); let userInfo:UserToken = status["user_info"]; globalData["token"] = userInfo.access_token; localStorage.setItem("token", userInfo.access_token); diff --git a/src/views/system/db-manage.vue b/src/views/system/db-manage.vue index d6e11c3..a24eec2 100644 --- a/src/views/system/db-manage.vue +++ b/src/views/system/db-manage.vue @@ -489,6 +489,10 @@ const executeSql = () => { // return { prop: key, label: key }; // }); // console.log(res.data); + ElMessage({ + type: "success", + message: "执行SQL成功", + }); } else { console.error("执行SQL失败:", res.message); ElMessage({