|
@@ -5,10 +5,10 @@
|
|
<div class="left">
|
|
<div class="left">
|
|
<div ref="phone" :class="['left-qrCode', {'phone-switch': isPhone}]" @click="handlePhone">
|
|
<div ref="phone" :class="['left-qrCode', {'phone-switch': isPhone}]" @click="handlePhone">
|
|
<div class="switch-tip">
|
|
<div class="switch-tip">
|
|
- {{ isPhone ? '短信、密码登录/注册' : '微信扫码快速登录' }}
|
|
|
|
|
|
+ {{ isPhone ? $t('login.smsOrPassword') : $t('login.scanWeChatCode') }}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
- <div v-if="loginType" class="loginType">企业登录</div>
|
|
|
|
|
|
+ <div v-if="loginType" class="loginType">{{ $t('login.enterpriseLogin') }}</div>
|
|
</div>
|
|
</div>
|
|
<div class="right mr-2 mt-3" v-if="showClose">
|
|
<div class="right mr-2 mt-3" v-if="showClose">
|
|
<v-icon color="grey" size="30">mdi-close</v-icon>
|
|
<v-icon color="grey" size="30">mdi-close</v-icon>
|
|
@@ -17,17 +17,17 @@
|
|
<div class="login-content-box mt-5">
|
|
<div class="login-content-box mt-5">
|
|
<div v-if="!isPhone" class="login-tab">
|
|
<div v-if="!isPhone" class="login-tab">
|
|
<v-tabs v-model="tab" align-tabs="center" color="primary">
|
|
<v-tabs v-model="tab" align-tabs="center" color="primary">
|
|
- <v-tab :value="1">短信登录</v-tab>
|
|
|
|
- <v-tab :value="2">密码登录</v-tab>
|
|
|
|
|
|
+ <v-tab :value="1">{{ $t('login.smsLogin') }}</v-tab>
|
|
|
|
+ <v-tab :value="2">{{ $t('login.passwordLogin') }}</v-tab>
|
|
</v-tabs>
|
|
</v-tabs>
|
|
<v-window v-model="tab" class="mt-9">
|
|
<v-window v-model="tab" class="mt-9">
|
|
<!-- 验证码登录 -->
|
|
<!-- 验证码登录 -->
|
|
<v-window-item :value="1">
|
|
<v-window-item :value="1">
|
|
- <phoneFrom ref="phoneRef"></phoneFrom>
|
|
|
|
|
|
+ <phoneFrom ref="phoneRef" @handleEnter="handleLogin"></phoneFrom>
|
|
</v-window-item>
|
|
</v-window-item>
|
|
<!-- 账号密码登录 -->
|
|
<!-- 账号密码登录 -->
|
|
<v-window-item :value="2">
|
|
<v-window-item :value="2">
|
|
- <passwordFrom ref="passRef"></passwordFrom>
|
|
|
|
|
|
+ <passwordFrom ref="passRef" @handleEnter="handleLogin"></passwordFrom>
|
|
</v-window-item>
|
|
</v-window-item>
|
|
</v-window>
|
|
</v-window>
|
|
</div>
|
|
</div>
|
|
@@ -39,9 +39,9 @@
|
|
{{ tab === 1 ? $t('login.register') : $t('login.login') }}
|
|
{{ tab === 1 ? $t('login.register') : $t('login.login') }}
|
|
</v-btn>
|
|
</v-btn>
|
|
<div class="login-tips mt-3">
|
|
<div class="login-tips mt-3">
|
|
- 登录/注册即代表您同意
|
|
|
|
- <span class="color" style="cursor: pointer;" @click="handleToUserAgreement">[用户协议]</span>
|
|
|
|
- <span class="color" style="cursor: pointer;" @click="handlePrivacyPolicy">[隐私政策]</span>
|
|
|
|
|
|
+ {{ $t('login.agreeLogin') }}
|
|
|
|
+ <span class="color" style="cursor: pointer;" @click="handleToUserAgreement">[{{ $t('login.userAgreement') }}]</span>
|
|
|
|
+ <span class="color" style="cursor: pointer;" @click="handlePrivacyPolicy">[{{ $t('login.privacyPolicy') }}]</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
@@ -56,9 +56,11 @@ import qrCode from './components/qrCode.vue'
|
|
|
|
|
|
import { useUserStore } from '@/store/user'
|
|
import { useUserStore } from '@/store/user'
|
|
import { useRoute, useRouter } from 'vue-router'
|
|
import { useRoute, useRouter } from 'vue-router'
|
|
|
|
+import { useI18n } from '@/hooks/web/useI18n'
|
|
import Snackbar from '@/plugins/snackbar'
|
|
import Snackbar from '@/plugins/snackbar'
|
|
defineOptions({ name: 'login-index' })
|
|
defineOptions({ name: 'login-index' })
|
|
|
|
|
|
|
|
+const { t } = useI18n()
|
|
const router = useRouter()
|
|
const router = useRouter()
|
|
const route = useRoute()
|
|
const route = useRoute()
|
|
const loginType = ref(route.query?.loginType - 0 || null)
|
|
const loginType = ref(route.query?.loginType - 0 || null)
|
|
@@ -88,7 +90,7 @@ const handleLogin = async () => {
|
|
} else {
|
|
} else {
|
|
await userStore.handlePasswordLogin({ ...passRef.value.loginData, type })
|
|
await userStore.handlePasswordLogin({ ...passRef.value.loginData, type })
|
|
}
|
|
}
|
|
- Snackbar.success('登录成功')
|
|
|
|
|
|
+ Snackbar.success(t('login.loginSuccess'))
|
|
router.push({ path: '/home' })
|
|
router.push({ path: '/home' })
|
|
}
|
|
}
|
|
finally {
|
|
finally {
|