| | |
| | | <!-- <div class="textColor1" :class="activeIndex == 0 ? 'active' : ''" @click="changeIndex(0)">{{ |
| | | $t('account') |
| | | }}</div> --> |
| | | <div class="textColor1" :class="activeIndex == 1 ? 'active' : ''" @click="changeIndex(1)">{{ $t('email') }} |
| | | <div class="textColor1" :class="activeIndex == 1 ? 'active' : ''" @click="changeIndex(1)"> |
| | | {{ $t('电子邮箱') }} |
| | | </div> |
| | | <div class="textColor1" :class="activeIndex == 2 ? 'active' : ''" @click="changeIndex(2)">{{ |
| | | $t('phoneNum') |
| | | }}</div> |
| | | <div class="textColor1" :class="activeIndex == 2 ? 'active' : ''" @click="changeIndex(2)"> |
| | | {{ $t('手机号码') }} |
| | | </div> |
| | | </div> |
| | | <ExInput :label="getRegType(activeIndex, true)" :placeholderText="getRegType(activeIndex, false)" |
| | | v-model="username" :area="isArea" :dialCode="dialCode" @selectArea="onSelectArea" :icon="icon" /> |
| | | |
| | | <ExInput :label="$t('setPassword')" :placeholderText="$t('passwordTips')" v-model="password" |
| | | <ExInput :label="$t('设置登录密码')" :placeholderText="$t('请输入8-16位字符,必须包含大写字母、和特殊字符')" v-model="password" |
| | | typeText="password" /> |
| | | <ExInput :label="$t('repassword')" :placeholderText="$t('surePassword')" v-model="repassword" |
| | | typeText="password" /> |
| | | <ExInput :label="$t('setSafeword')" :placeholderText="$t('safewordTips')" v-model="safeword" typeText="password" |
| | | v-if="activeIndex === 1 || activeIndex === 2" /> |
| | | <ExInput :label="$t('确认登录密码')" :placeholderText="$t('surePassword')" v-model="repassword" typeText="password" /> |
| | | <ExInput :label="$t('setSafeword')" :placeholderText="$t('请输入6位阿拉伯数字的资金密码')" v-model="safeword" |
| | | typeText="password" v-if="activeIndex === 1 || activeIndex === 2" /> |
| | | <div class="inputCom" v-if="activeIndex === 1 || activeIndex === 2"> |
| | | <p class="label textColor">{{ $t('验证码') }}</p> |
| | | <p class="label textColor" v-if="activeIndex == 1">{{ $t('邮箱验证码') }}</p> |
| | | <p class="label textColor" v-else-if="activeIndex == 2">{{ $t('手机验证码') }}</p> |
| | | <p class="label textColor" v-else>{{ $t('验证码') }}</p> |
| | | <div class="iptbox inputBackground"> |
| | | <input class="inputBackground textColor" type="text" :placeholder="$t('entryVerifyCode')" |
| | | |
| | | <input class="inputBackground textColor" type="text" |
| | | :placeholder="activeIndex == 1 ? $t('请输入邮箱验证码') : activeIndex == 2 ? $t('请输入手机验证码') : $t('entryVerifyCode')" |
| | | v-model="verifyCode"> |
| | | <span v-if="type !== 3" @click="senCode">{{ $t('sendVerifyCode') }} |
| | | |
| | | <span v-if="type !== 3" @click="senCode"> |
| | | <span v-if="activeIndex == 1">{{ $t('发送邮箱验证码') }}</span> |
| | | <span v-else-if="activeIndex == 2">{{ $t('发送手机验证码') }}</span> |
| | | <span v-else>{{ $t('sendVerifyCode') }}</span> |
| | | <template v-if="time">({{ time }})s</template> |
| | | </span> |
| | | </div> |
| | | </div> |
| | | <ExInput :label="$t('金融机构代码')" :placeholderText="$t('请输入')" v-model="invitCode" :clearBtn="false" /> |
| | | |
| | | <!-- <ExInput :label="$t('金融机构代码')" :placeholderText="$t('请输入金融机构识别码')" v-model="invitCode" :clearBtn="false" /> --> |
| | | |
| | | <div class="protocol textColor"> |
| | | <i @click="agreeProt"> |
| | | <img v-show="agree" src="../../assets/image/login/prot2.png" alt="" /> |
| | |
| | | import { ref, onMounted, reactive, onUnmounted } from 'vue'; |
| | | import { showToast } from "vant"; |
| | | import store from '@/store/store' |
| | | const customer_service_url = ref(customerServiceUrl) // 客服链接,有值的话就会跳转到客服外链 |
| | | const { t } = useI18n() |
| | | const router = useRouter() |
| | | const onRoute = (path) => { |
| | |
| | | router.go(-1) |
| | | } else { |
| | | if (path == '/customerService') { |
| | | if (customer_service_url.value) { |
| | | window.location.href = customer_service_url.value; |
| | | if (customerServiceUrl()) { |
| | | window.location.href = customerServiceUrl(); |
| | | } else { |
| | | router.push(path) |
| | | } |
| | |
| | | case 0: |
| | | return bFlag ? t('account') : t('entryAccount'); |
| | | case 1: |
| | | return bFlag ? t('email') : t('entryEmail'); |
| | | return bFlag ? t('电子邮箱') : t('entryEmail'); |
| | | case 2: |
| | | return bFlag ? t('phoneNum') : t('entryPhone'); |
| | | return bFlag ? t('手机号码') : t('请输入手机号码'); |
| | | } |
| | | } |
| | | |
| | |
| | | const agreeProt = () => { |
| | | agree.value = !agree.value |
| | | } |
| | | |
| | | // 密码验证 |
| | | const validatePassword = (password) => { |
| | | const passwordRegex = /^(?=.*[A-Z])(?=.*[!@#$%^&*()_+\-=\[\]{};':"\\|,.<>\/?]).{8,16}$/; |
| | | return passwordRegex.test(password); |
| | | } |
| | | |
| | | const register = () => { |
| | | console.log(activeIndex.value, 'activeIndex.value') |
| | | if (activeIndex.value == 0) { |
| | |
| | | showToast(t('entryPassword')); |
| | | return |
| | | } |
| | | if (password.value.length < 6) { |
| | | |
| | | if (!validatePassword(password.value)) { |
| | | showToast(t('passwordTips')); |
| | | return |
| | | } |
| | |
| | | showToast(t('noSamePassword')); |
| | | return |
| | | } |
| | | // if (invitCode.value.length == '') { |
| | | // showToast(t('请输入金融机构代码')); |
| | | // return |
| | | // } |
| | | if (!agree.value) { |
| | | showToast(t('agreeServiceCond')); |
| | | return |
| | |
| | | password: password.value, |
| | | type: activeIndex.value === 1 ? '2' : '1', // 2邮箱,1手机 |
| | | verifcode: verifyCode.value, |
| | | usercode: invitCode.value, |
| | | // usercode: invitCode.value, |
| | | safeword: safeword.value |
| | | }).then((res) => { |
| | | userStore[GET_USERINFO](res) |
| | |
| | | password: password.value, |
| | | // re_password: repassword.value, |
| | | type: type.value, |
| | | userCode: invitCode.value, |
| | | // userCode: invitCode.value, |
| | | }).then((res) => { |
| | | userStore[GET_USERINFO](res) |
| | | store.state.user.userInfo = res |