提交 dad7d12b authored 作者: inroi's avatar inroi
...@@ -5,6 +5,7 @@ import { ElNotification } from 'element-plus'; ...@@ -5,6 +5,7 @@ import { ElNotification } from 'element-plus';
import router from '@/router/index' import router from '@/router/index'
export default function useLogin(loginModel: LoginParm) { export default function useLogin(loginModel: LoginParm) {
const { proxy } = getCurrentInstance() as any; const { proxy } = getCurrentInstance() as any;
const num = ref(0)
//登录提交 //登录提交
const login = async () => { const login = async () => {
//表单验证 //表单验证
...@@ -24,6 +25,7 @@ export default function useLogin(loginModel: LoginParm) { ...@@ -24,6 +25,7 @@ export default function useLogin(loginModel: LoginParm) {
router.push({ path: '/' }) router.push({ path: '/' })
}, 1500) }, 1500)
} else { } else {
num.value++
// ElNotification({ // ElNotification({
// title:'登陆失败', // title:'登陆失败',
// message:res.msg, // message:res.msg,
...@@ -45,6 +47,7 @@ export default function useLogin(loginModel: LoginParm) { ...@@ -45,6 +47,7 @@ export default function useLogin(loginModel: LoginParm) {
const loginState = ref(false) const loginState = ref(false)
return { return {
login, login,
num,
loginState loginState
} }
} }
\ No newline at end of file
...@@ -2,6 +2,7 @@ import { getMenuListApi } from "@/services/api/menu/menuAPI"; ...@@ -2,6 +2,7 @@ import { getMenuListApi } from "@/services/api/menu/menuAPI";
import { RouteRecordRaw } from "vue-router"; import { RouteRecordRaw } from "vue-router";
import { ActionContext } from "vuex"; import { ActionContext } from "vuex";
import { RootState } from ".."; import { RootState } from "..";
import { ElNotification } from "element-plus";
import Layout from "@/layout/index.vue"; import Layout from "@/layout/index.vue";
const modules = import.meta.glob("../../views/**/*.vue"); const modules = import.meta.glob("../../views/**/*.vue");
//定义state //定义state
...@@ -50,20 +51,25 @@ export const actions = { ...@@ -50,20 +51,25 @@ export const actions = {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
getMenuListApi() getMenuListApi()
.then((res) => { .then((res) => {
/* res.data.forEach(item => { if (res.data.length === 0) {
if (item.meta.title === '部门') { ElNotification({
item.children = [] title: '获取权限失败',
} message: '该账号没有后台权限,请联系管理员授权',
}) */ type: 'error',
let accessedRoutes; })
if (res.code == 200) { sessionStorage.clear()
//动态生成路由 return window.location.href = "/#/login";
accessedRoutes = filterAsyncRoutes(res.data, router); } else {
//设置到menuList let accessedRoutes;
commit("setMenuList", accessedRoutes); if (res.code == 200) {
//动态生成路由
accessedRoutes = filterAsyncRoutes(res.data, router);
//设置到menuList
commit("setMenuList", accessedRoutes);
}
//返回
resolve(accessedRoutes);
} }
//返回
resolve(accessedRoutes);
}) })
.catch((error) => { .catch((error) => {
reject(error); reject(error);
......
...@@ -47,6 +47,7 @@ ...@@ -47,6 +47,7 @@
</div> </div>
</template> </template>
<script setup lang="ts"> <script setup lang="ts">
import { watch } from "vue";
import useImage from "@/services/business/login/useImage"; import useImage from "@/services/business/login/useImage";
import useBaseLogin from "@/services/business/login/useBaseLogin"; import useBaseLogin from "@/services/business/login/useBaseLogin";
import useLogin from "@/services/business/login/useLogin"; import useLogin from "@/services/business/login/useLogin";
...@@ -57,7 +58,10 @@ const { loginModel, rules, loginFormRef } = useBaseLogin(); ...@@ -57,7 +58,10 @@ const { loginModel, rules, loginFormRef } = useBaseLogin();
const { imgSrc, getImage } = useImage(); const { imgSrc, getImage } = useImage();
//登录 //登录
const { login, loginState } = useLogin(loginModel); const { login, loginState, num } = useLogin(loginModel);
watch(num, () => getImage(), { deep: true })
</script> </script>
<style scoped lang="scss"> <style scoped lang="scss">
.logincontainer { .logincontainer {
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论