Browse Source
- add a token revocation api - the token is revoked when the user logs out - add an logout button to the 404 pagepull/1309/head
4 changed files with 97 additions and 3 deletions
@ -1,9 +1,51 @@ |
|||
<script lang="ts" setup> |
|||
import { Fallback } from '@vben/common-ui'; |
|||
import { useRouter } from 'vue-router'; |
|||
|
|||
import { Fallback, VbenButton } from '@vben/common-ui'; |
|||
import { ArrowLeft, LogOut } from '@vben/icons'; |
|||
import { $t } from '@vben/locales'; |
|||
import { preferences } from '@vben/preferences'; |
|||
|
|||
import { Modal } from 'ant-design-vue'; |
|||
|
|||
import { useAuthStore } from '#/store'; |
|||
|
|||
defineOptions({ name: 'Fallback404Demo' }); |
|||
|
|||
const authStore = useAuthStore(); |
|||
const { push } = useRouter(); |
|||
|
|||
// 返回首页 |
|||
function back() { |
|||
push(preferences.app.defaultHomePath); |
|||
} |
|||
|
|||
// 退出登录 |
|||
function logout() { |
|||
Modal.confirm({ |
|||
centered: true, |
|||
title: $t('common.logout'), |
|||
content: $t('ui.widgets.logoutTip'), |
|||
async onOk() { |
|||
await authStore.logout(); |
|||
}, |
|||
}); |
|||
} |
|||
</script> |
|||
|
|||
<template> |
|||
<Fallback status="404" /> |
|||
<Fallback status="404"> |
|||
<template #action> |
|||
<div class="flex gap-2"> |
|||
<VbenButton size="lg" @click="back"> |
|||
<ArrowLeft class="mr-2 size-4" /> |
|||
{{ $t('common.backToHome') }} |
|||
</VbenButton> |
|||
<VbenButton size="lg" variant="destructive" @click="logout"> |
|||
<LogOut class="mr-2 size-4" /> |
|||
{{ $t('common.logout') }} |
|||
</VbenButton> |
|||
</div> |
|||
</template> |
|||
</Fallback> |
|||
</template> |
|||
|
|||
Loading…
Reference in new issue