签入版本

This commit is contained in:
2026-10-11 19:06:33 +08:00
parent 17d28de8b7
commit 4084c6bd17
674 changed files with 58855 additions and 1892 deletions
@@ -19,19 +19,22 @@
```vue
<!-- src/views/login/index.vue -->
<template>
<el-form :model="loginForm" @submit.prevent="handleLogin">
<el-form-item>
<el-input v-model="loginForm.username" placeholder="用户名" />
</el-form-item>
<el-form-item>
<el-input v-model="loginForm.password" type="password" placeholder="密码" />
</el-form-item>
<el-form-item>
<el-input v-model="loginForm.code" placeholder="验证码" />
<img :src="captchaImage" @click="refreshCaptcha" style="cursor: pointer" />
</el-form-item>
<el-button type="primary" @click="handleLogin">登录</el-button>
</el-form>
<a-form :model="loginForm">
<a-form-item name="username">
<a-input v-model:value="loginForm.username" placeholder="用户名" />
</a-form-item>
<a-form-item name="password">
<a-input-password v-model:value="loginForm.password" placeholder="密码" />
</a-form-item>
<a-form-item name="code">
<a-input v-model:value="loginForm.code" placeholder="验证码">
<template #suffix>
<img :src="captchaImage" @click="refreshCaptcha" style="cursor: pointer" />
</template>
</a-input>
</a-form-item>
<a-button type="primary" block @click="handleLogin">登录</a-button>
</a-form>
</template>
<script setup>
@@ -70,6 +73,8 @@ onMounted(() => refreshCaptcha());
## 完整登录示例(含失败处理)
```typescript
import { message } from 'ant-design-vue';
const loading = ref(false);
const handleLogin = async () => {
@@ -78,11 +83,11 @@ const handleLogin = async () => {
try {
await userStore.login(loginForm.value);
ElMessage.success('登录成功');
message.success('登录成功');
router.push('/');
} catch (e: any) {
// 登录失败(验证码错误/密码错误等),刷新验证码
ElMessage.error(e.message || '登录失败');
message.error(e.message || '登录失败');
refreshCaptcha();
loginForm.value.code = '';
} finally {