perf:调整signalR连接为登录就建立

This commit is contained in:
Xwen
2024-01-08 21:28:05 +08:00
parent 7101238eae
commit 944acd90a6
2 changed files with 5 additions and 12 deletions

View File

@@ -8,6 +8,7 @@ import {
userLogout, userLogout,
userRegister, userRegister,
} from "@/apis/auth"; } from "@/apis/auth";
import signalR from "@/utils/signalR";
const TokenKey = "AccessToken"; const TokenKey = "AccessToken";
export const AUTH_MENUS = "AUTH_MENUS"; export const AUTH_MENUS = "AUTH_MENUS";
@@ -123,6 +124,8 @@ export default function useAuths(opt) {
setToken(token); setToken(token);
try { try {
// 登录成功后进行长连接
await signalR.init(`main`);
// 存储用户信息 // 存储用户信息
await useUserStore().getInfo(); // 用户信息 await useUserStore().getInfo(); // 用户信息
// 登录成功后 路由跳转 // 登录成功后 路由跳转

View File

@@ -201,7 +201,6 @@ import Skeleton from "@/components/Skeleton/index.vue";
import useUserStore from "@/stores/user"; import useUserStore from "@/stores/user";
import useSocketStore from "@/stores/socket"; import useSocketStore from "@/stores/socket";
import { storeToRefs } from "pinia"; import { storeToRefs } from "pinia";
import signalR from "@/utils/signalR";
const { token } = storeToRefs(useUserStore()); const { token } = storeToRefs(useUserStore());
@@ -262,18 +261,8 @@ onMounted(async () => {
const { data: userAnalyseInfoData } = await getUserAnalyse(); const { data: userAnalyseInfoData } = await getUserAnalyse();
onlineNumber.value = userAnalyseInfoData.onlineNumber; onlineNumber.value = userAnalyseInfoData.onlineNumber;
userAnalyseInfo.value = userAnalyseInfoData; userAnalyseInfo.value = userAnalyseInfoData;
// 实时人数
await signalR.init(`main`);
}); });
//这里还需要监视token的变化重新进行signalr连接
watch(
() => token.value,
async (newValue, oldValue) => {
await signalR.init(`main`);
}
);
const weekXAxis = ["周一", "周二", "周三", "周四", "周五", "周六", "周日"]; const weekXAxis = ["周一", "周二", "周三", "周四", "周五", "周六", "周日"];
// 访问统计 // 访问统计
const statisOptions = computed(() => { const statisOptions = computed(() => {
@@ -297,7 +286,8 @@ watch(
() => currentOnlineNum.value, () => currentOnlineNum.value,
(val) => { (val) => {
onlineNumber.value = val; onlineNumber.value = val;
} },
{ deep: true }
); );
</script> </script>
<style scoped lang="scss"> <style scoped lang="scss">