@@ -9,7 +9,7 @@ import { Button } from 'ant-design-vue';
import { useAccessStore , useAppStore } from '#/store' ;
defineOptions ( { name : 'AccessBackend ' } ) ;
defineOptions ( { name : 'AccessButtonControl ' } ) ;
const accounts : Record < string , LoginAndRegisterParams > = {
admin : {
@@ -41,7 +41,7 @@ async function changeAccount(role: string) {
}
const account = accounts [ role ] ;
await appStore. resetAppState ( ) ;
appStore . resetAppState ( ) ;
await accessStore . authLogin ( account , async ( ) => {
router . go ( 0 ) ;
} ) ;
@@ -51,68 +51,68 @@ async function changeAccount(role: string) {
< template >
< div class = "p-5" >
< div class = "card-box p-5" >
< h1 class = "text-xl font-semibold" > 后端页面访问权限演示 < / h1 >
< h1 class = "text-xl font-semibold" >
{ { accessMode === 'frontend' ? '前端' : '后端' } } 页面访问权限演示
< / h1 >
< div class = "text-foreground/80 mt-2" > 切换不同的账号 , 观察按钮变化 。 < / div >
< / div >
< template v-if = "accessMode === 'backend'" >
< div class = "card-box mt-5 p-5 font-semibold " >
< div class = "mb-3" >
< span class = "text-lg" > 当前账号 : < / span >
< span class = "text-primary mx-4" >
{ { accessStore . userRoles } }
< / span >
< / div >
< Button :type = "roleButtonType('super')" @click ="changeAccount('super')" >
切换为 Super 账号
< / Button >
< Button
:type = "roleButtonType('admin')"
class = "mx-4"
@click ="changeAccount('admin')"
>
切换为 Admin 账号
< / Button >
< Button :type = "roleButtonType('user')" @click ="changeAccount('user')" >
切换为 User 账号
< / Button >
< div class = "card-box mt-5 p-5 font-semibold" >
< div class = "mb-3 " >
< span class = "text-lg" > 当前账号 : < / span >
< span class = "text-primary mx-4" >
{ { accessStore . userRoles } }
< / span >
< / div >
< div class = "card-box mt-5 p-5 font-semibold" >
< div class = "mb-3 text-lg" > 组件形式控制 < / div >
< CodeAccess :value = "['AC_100100']" >
< Button class = "mr-4" > Super 账号可见 [ "AC_1000001" ] < / Button >
< / CodeAccess >
< CodeAccess :value = "['AC_100030']" >
< Button class = "mr-4" > Admin 账号可见 [ "AC_100010" ] < / Button >
< / CodeAccess >
< CodeAccess :value = "['AC_1000001']" >
< Button class = "mr-4" > User 账号可见 [ "AC_1000001" ] < / Button >
< / CodeAccess >
< CodeAccess : value = "['AC_100100', 'AC_100010']" >
< Button class = "mr-4" >
Super & Admin 账号可见 [ "AC_100100" , "AC_1000001" ]
< / Button >
< / CodeAccess >
< / div >
< Button :type = "roleButtonType('super')" @click ="changeAccount('super')" >
切换为 Super 账号
< / Button >
< div class = "card-box mt-5 p-5 font-semibold" >
< div class = "mb-3 text-lg" > 函数形式控制 < / div >
< Button v-if = "hasAuthByCodes(['AC_100100'])" class= "mr -4">
Super 账号可见 [ " AC_1000001 " ]
< / Button >
< Button v-if = "hasAuthByCodes(['AC_100030'])" class="mr-4" >
Admin 账号可见 [ " AC_100010 " ]
< / Button >
< Button v-if = "hasAuthByCodes(['AC_1000001'])" class="mr-4" >
User 账号可见 [ " AC_1000001 " ]
< / Button >
< Button v-if = "hasAuthByCodes(['AC_100100', 'AC_1000001'])" class="mr-4" >
< Button
:type = "roleButtonType('admin')"
class = "mx -4"
@click ="changeAccount('admin')"
>
切换为 Admin 账号
< / Button >
< Button :type = "roleButtonType('user')" @click ="changeAccount('user')" >
切换为 User 账号
< / Button >
< / div >
< div class = "card-box mt-5 p-5 font-semibold" >
< div class = "mb-3 text-lg" > 组件形式控制 < / div >
< CodeAccess :value = "['AC_100100']" >
< Button class = "mr-4" > Super 账号可见 [ "AC_1000001" ] < / Button >
< / CodeAccess >
< CodeAccess :value = "['AC_100030']" >
< Button class = "mr-4" > Admin 账号可见 [ "AC_100010" ] < / Button >
< / CodeAccess >
< CodeAccess :value = "['AC_1000001']" >
< Button class = "mr-4" > User 账号可见 [ "AC_1000001" ] < / Button >
< / CodeAccess >
< CodeAccess : value = "['AC_100100', 'AC_100010']" >
< Button class = "mr-4" >
Super & Admin 账号可见 [ "AC_100100" , "AC_1000001" ]
< / Button >
< / div >
< / template >
< / CodeAccess >
< / div >
< div class = "card-box mt-5 p-5 font-semibold" >
< div class = "mb-3 text-lg" > 函数形式控制 < / div >
< Button v-if = "hasAuthByCodes(['AC_100100'])" class="mr-4" >
Super 账号可见 [ " AC_1000001 " ]
< / Button >
< Button v-if = "hasAuthByCodes(['AC_100030'])" class="mr-4" >
Admin 账号可见 [ " AC_100010 " ]
< / Button >
< Button v-if = "hasAuthByCodes(['AC_1000001'])" class="mr-4" >
User 账号可见 [ " AC_1000001 " ]
< / Button >
< Button v-if = "hasAuthByCodes(['AC_100100', 'AC_1000001'])" class="mr-4" >
Super & Admin 账号可见 [ " AC_100100 " , " AC_1000001 " ]
< / Button >
< / div >
< / div >
< / template >