zhouwenxuan
2023-12-08 b7143b51f3a50b6fac9c139d291c1fad017daee6
src/views/components/loginForm.vue
@@ -24,6 +24,7 @@
          auto-complete="off"
          placeholder="密码"
          @keyup.enter="handleLogin"
          show-password
        >
          <template #prefix><svg-icon icon-class="password" class="el-input__icon input-icon" /></template>
        </el-input>
@@ -49,7 +50,7 @@
            :loading="loading"
            size="large"
            type="primary"
            style="width:50%;"
            style="width:63%;"
            @click.prevent="handleLogin"
        >
          <span v-if="!loading">登 录</span>
@@ -71,6 +72,8 @@
import { encrypt, decrypt } from "@/utils/jsencrypt";
import useUserStore from '@/store/modules/user'
import { Register } from "@/layout/components";
import { Base64 } from 'js-base64'
import menu from "@/layout/components/Sidebar/menu";
const userStore = useUserStore()
const route = useRoute();
@@ -104,13 +107,15 @@
})
const openRegist = ()=>{
  regRef.value.dialogVisible = true
  regRef.value.openDialog('add', {});
}
watch(route, (newRoute) => {
    redirect.value = newRoute.query && newRoute.query.redirect;
}, { immediate: true });
const sidebarRouters = ref([])
function handleLogin() {
  proxy.$refs.loginRef.validate(valid => {
    if (valid) {
@@ -127,15 +132,24 @@
      //   Cookies.remove("rememberMe");
      // }
      // 调用action的登录方法
      loginForm.value.password = Base64.encode(loginForm.value.password)
      userStore.login(loginForm.value).then(() => {
        const query = route.query;
        const otherQueryParams = Object.keys(query).reduce((acc, cur) => {
          if (cur !== "redirect") {
            acc[cur] = query[cur];
        // const query = route.query;
        // const otherQueryParams = Object.keys(query).reduce((acc, cur) => {
        //   if (cur !== "redirect") {
        //     acc[cur] = query[cur];
        //   }
        //   return acc;
        // }, {});
        const userInfo = JSON.parse(Cookies.get('userInfo'))
          if(userInfo.identity === 0 || userInfo.identity === 1 ) {
              sidebarRouters.value =  menu.adminMenu
              Cookies.set('routers',JSON.stringify(sidebarRouters.value))
          }
          return acc;
        }, {});
        router.push({ path: redirect.value || "/", query: otherQueryParams });
        router.push({
            path: sidebarRouters.value[0].path
        })
        // router.push({ path: redirect.value || "/", query: otherQueryParams });
      }).catch(() => {
        loading.value = false;
        // 重新获取验证码