| | |
| | | <el-checkbox v-model="form.agreement" label="同意xxx服务协议" size="large" /> |
| | | </el-form-item> |
| | | |
| | | <el-button class="mt-1" @click="submitLogin()" type="primary" size="large" style="width: 100%;"> |
| | | <el-button class="mt-1" @click="submitLogin()" :loading="loginLoading" type="primary" size="large" style="width: 100%;"> |
| | | <el-text class="text-lg text-white">登录</el-text> |
| | | </el-button> |
| | | </el-form> |
| | |
| | | |
| | | <script> |
| | | import { useLoginStore } from '@/stores/login.js' |
| | | import { useSessionStore } from '@/stores/session.js' |
| | | import { storeToRefs } from 'pinia'; |
| | | export default { |
| | | components: {}, |
| | | setup() { |
| | | const { loginDialogVisible } = storeToRefs(useLoginStore()) |
| | | return { loginDialogVisible } |
| | | const { setUserInfo } = useSessionStore() |
| | | return { loginDialogVisible, setUserInfo } |
| | | }, |
| | | data() { |
| | | return { |
| | |
| | | countdown: 180, |
| | | countdownInterval: null, |
| | | sendCodeLoading: false, |
| | | loginLoading: false |
| | | } |
| | | }, |
| | | computed: { |
| | | title() { |
| | | let obj = { |
| | | register: '注 册', |
| | | mobile: '手 机 号登 录', |
| | | mobile: '手 机 号 登 录', |
| | | qrCode: '微 信 扫 码 登 录' |
| | | } |
| | | return obj[this.loginType] |
| | |
| | | async submitLogin() { |
| | | try { |
| | | await this.$refs.accountForm.validate() |
| | | this.loginLoading = true |
| | | setTimeout(() => { |
| | | localStorage.setItem('accessToken', '123456') |
| | | this.getUserInfo() |
| | | this.$message.success('登录成功') |
| | | this.loginDialogVisible = false |
| | | this.loginLoading = false |
| | | |
| | | }, 1000) |
| | | } catch (error) { |
| | | console.log() |
| | | } |
| | | }, |
| | | getUserInfo() { |
| | | this.setUserInfo({ |
| | | id: '123456', |
| | | username: '黄婷婷', |
| | | }) |
| | | }, |
| | | async submitRegister() { |
| | | try { |
| | | await this.$refs.registerForm.validate() |