Files
wireguard-dashboard-admin/src/views/permission/page/index.vue

66 lines
1.6 KiB
Vue
Raw Normal View History

2021-10-16 21:17:18 +08:00
<script setup lang="ts">
import { initRouter } from "@/router/utils";
2022-10-25 17:51:21 +08:00
import { type CSSProperties, ref, computed } from "vue";
import { useUserStoreHook } from "@/store/modules/user";
import { usePermissionStoreHook } from "@/store/modules/permission";
2022-08-22 21:34:55 +08:00
defineOptions({
name: "PermissionPage"
});
2022-11-11 11:53:54 +08:00
const elStyle = computed((): CSSProperties => {
2022-10-25 17:51:21 +08:00
return {
width: "85vw",
justifyContent: "start"
2022-10-25 17:51:21 +08:00
};
});
2022-11-11 11:53:54 +08:00
const username = ref(useUserStoreHook()?.username);
2022-10-25 17:51:21 +08:00
const options = [
{
value: "admin",
label: "管理员角色"
},
{
value: "common",
label: "普通角色"
2021-10-16 21:17:18 +08:00
}
2022-10-25 17:51:21 +08:00
];
function onChange() {
useUserStoreHook()
2022-11-10 12:28:10 +08:00
.loginByUsername({ username: username.value, password: "admin123" })
2022-10-25 17:51:21 +08:00
.then(res => {
if (res.success) {
sessionStorage.removeItem("async-routes");
2022-10-25 17:51:21 +08:00
usePermissionStoreHook().clearAllCachePage();
initRouter();
}
});
2021-10-16 21:17:18 +08:00
}
</script>
<template>
2022-10-25 17:51:21 +08:00
<el-space direction="vertical" size="large">
<el-tag :style="elStyle" size="large" effect="dark">
2022-10-25 17:51:21 +08:00
模拟后台根据不同角色返回对应路由具体参考完整版pure-admin代码
</el-tag>
<el-card shadow="never" :style="elStyle">
2022-10-25 17:51:21 +08:00
<template #header>
<div class="card-header">
<span>当前角色{{ username }}</span>
</div>
</template>
<el-select v-model="username" @change="onChange">
<el-option
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-card>
</el-space>
2021-10-16 21:17:18 +08:00
</template>