更新代码

This commit is contained in:
2026-01-15 23:27:51 +08:00
parent 6880f77d5c
commit 947cabd061
2 changed files with 27 additions and 9 deletions
+25 -7
View File
@@ -46,10 +46,11 @@
</template> </template>
<script setup> <script setup>
import { reactive, ref, h } from 'vue'; import { reactive, ref, h } from 'vue'
import { useRouter } from 'vue-router'; import { useRouter } from 'vue-router'
import { message } from 'ant-design-vue'; import { message } from 'ant-design-vue'
import { UserOutlined, LockOutlined } from '@ant-design/icons-vue'; import { UserOutlined, LockOutlined } from '@ant-design/icons-vue'
import { useUserStore } from '@/stores/modules/user'
// 定义组件名称(多词命名) // 定义组件名称(多词命名)
defineOptions({ defineOptions({
@@ -58,6 +59,7 @@ defineOptions({
const router = useRouter(); const router = useRouter();
const loading = ref(false); const loading = ref(false);
const userStore = useUserStore()
const formState = reactive({ const formState = reactive({
username: '', username: '',
@@ -68,10 +70,26 @@ const formState = reactive({
const handleLogin = async () => { const handleLogin = async () => {
loading.value = true; loading.value = true;
try { try {
// TODO: 实现登录逻辑 // 模拟登录请求
await new Promise((resolve) => setTimeout(resolve, 1000)); await new Promise((resolve) => setTimeout(resolve, 1000))
// 模拟登录成功
const mockUserInfo = {
id: 1,
username: formState.username,
nickname: '管理员',
email: 'admin@example.com',
role: ['admin'],
avatar: ''
}
const mockToken = 'mock-token-' + Date.now()
const mockRefreshToken = 'mock-refresh-token-' + Date.now()
userStore.setToken(mockToken)
userStore.setRefreshToken(mockRefreshToken)
userStore.setUserInfo(mockUserInfo)
message.success('登录成功'); message.success('登录成功');
router.push('/'); // 跳转到首页或重定向页面
const redirect = router.currentRoute.value.query.redirect || '/'
router.push(redirect)
} catch { } catch {
message.error('登录失败,请检查用户名和密码'); message.error('登录失败,请检查用户名和密码');
} finally { } finally {
+2 -2
View File
@@ -108,8 +108,8 @@ router.beforeEach(async (to, from, next) => {
// 设置页面标题 // 设置页面标题
document.title = to.meta.title document.title = to.meta.title
? `${to.meta.title} - ${config.app_title}` ? `${to.meta.title} - ${config.APP_NAME}`
: config.app_title : config.APP_NAME
const userStore = useUserStore() const userStore = useUserStore()
const isLoggedIn = userStore.isLoggedIn() const isLoggedIn = userStore.isLoggedIn()