| | |
| | | <template> |
| | | <div class="register"> |
| | | <div class="top" @click="router.go(-1)"><img src="../../assets/image/icon-close.png" alt=""></div> |
| | | <Step :step="1"></Step> |
| | | <div class="title textColor">{{ $t('register') }}</div> |
| | | <div class="register h-100vh"> |
| | | <div class="status_bar fixed w-full top-0 left-0 h-44 flex items-center justify-between"> |
| | | <div class="w-20 h-20 ml-13"> |
| | | <img class="l_icon" src="../../assets/img/back.svg" @click="goBack" /> |
| | | </div> |
| | | <div class="absolute top-0 left-0 w-full h-44 flex items-center justify-center z--1"> |
| | | <div class="text-19 font-medium" style="color:#fff;">{{ t('register') }}</div> |
| | | </div> |
| | | </div> |
| | | <!-- <div class="top" @click="router.go(-1)"><img src="../../assets/image/icon-close.png" alt=""></div> |
| | | <Step :step="1"></Step> --> |
| | | <!-- <div class="title textColor">{{ $t('register') }}</div> --> |
| | | <!-- <div class="flex re-tab"> |
| | | <div class="textColor1" :class="activeIndex == 0 ? 'active' : ''" @click="changeIndex(0)">{{ |
| | | $t('account') |
| | |
| | | $t('phoneNum') |
| | | }}</div> |
| | | </div> --> |
| | | <ExInput :label="getRegType(activeIndex, true)" :placeholderText="getRegType(activeIndex, false)" v-model="username" |
| | | <!-- <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" 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" /> |
| | | <div class="inputCom" v-if="activeIndex === 1"> |
| | | v-if="activeIndex === 1" /> --> |
| | | <!-- <div class="inputCom" v-if="activeIndex === 1"> |
| | | <p class="label textColor">{{ $t('验证码') }}</p> |
| | | <div class="iptbox inputBackground"> |
| | | <input class="inputBackground textColor" type="text" :placeholder="$t('entryVerifyCode')" |
| | | v-model="verifyCode"> |
| | | <span v-if="type !== 3" @click="senCode">{{ $t('sendVerifyCode') }} |
| | | <template v-if="time">({{ time }})s</template> |
| | | </span> |
| | | </div> |
| | | </div> |
| | | <ExInput :label="$t('invitCode')" :placeholderText="$t('entryInvitCode')" v-model="invitCode" :clearBtn="false" /> |
| | | <div class="protocol textColor"> |
| | | </span> |
| | | </div> |
| | | </div> --> |
| | | <!-- <ExInput :label="$t('invitCode')" :placeholderText="$t('entryInvitCode')" v-model="invitCode" |
| | | :clearBtn="false" /> --> |
| | | <!-- <div class="protocol textColor"> |
| | | <i @click="agreeProt"> |
| | | <img v-show="agree" src="../../assets/image/login/prot2.png" alt="" /> |
| | | <img v-show="!agree" src="../../assets/image/login/prot1.png" alt="" /> |
| | |
| | | {{ $t('readAgree') }}<span class="colorMain" @click="router.push('/TermsOfService')">{{ |
| | | $t('serviceConf') |
| | | }}</span> |
| | | </div> |
| | | <van-button class="w-full" style="margin-top:10px;" type="primary" @click="register">{{ $t('register') }} |
| | | </div> --> |
| | | <!-- <van-button class="w-full" style="margin-top:10px;" type="primary" @click="register">{{ $t('register') }} |
| | | </van-button> |
| | | <div class="noTips textColor">{{ $t('hasAccount') }}<span class="colorMain" @click="router.push('/login')"> |
| | | {{ $t('goLogin') }}</span> |
| | | </div> --> |
| | | <!-- <nationality-list ref='controlChildRef' :title="$t('selectArea')" @getName="getName"></nationality-list> --> |
| | | |
| | | <!-- <Vcode :imgs="[img1, img2]" :show="show" @success="onSuccess" :canvasHeight="200" @fail="onFail" |
| | | @close="show = false;" sliderText='' :successText="$t('vertifyPass')" :failText="$t('vertifuFail')" /> --> |
| | | |
| | | <!-- <div>{{ msg }}</div> --> |
| | | |
| | | <div class="px-26 text-white" |
| | | style="background: url("/static/img/bg-login.png") 0% 0% / cover fixed;"> |
| | | <span class="text-40 font-bold mt-80 block">{{ $t('register') }}</span> |
| | | <span class="text-15 font-medium block mt-10">{{ $t('立刻加入') }}</span> |
| | | <div class="mt-40"> |
| | | <div class="bg-white p-14 rounded-10 flex items-center"> |
| | | <div class="w-26 h-26"> |
| | | <img src="../../assets/img/mine-select.png" draggable="false"> |
| | | </div> |
| | | <div class="ml-9 text-black flex-1"> |
| | | <div class="uni-input-wrapper"> |
| | | <input type="text" maxlength="140" v-model="username" step="" enterkeyhint="done" |
| | | class="uni-input-input" autocomplete="off" :placeholder="$t('请输入账号')"> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="mt-15 bg-white p-14 rounded-10 flex items-center"> |
| | | <div class="w-22 h-22"> |
| | | <img src="../../assets/img/icon-password.png" draggable="false"> |
| | | </div> |
| | | <div class="ml-9 text-black flex-1"> |
| | | <div class="uni-input-wrapper"> |
| | | <input type="password" v-model="password" maxlength="140" step="" enterkeyhint="done" |
| | | class="uni-input-input" autocomplete="off" :placeholder="$t('密码')"> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="mt-15 bg-white p-14 rounded-10 flex items-center"> |
| | | <div class="w-22 h-22"> |
| | | <img src="../../assets/img/icon-password.png" draggable="false"> |
| | | </div> |
| | | <div class="ml-9 text-black flex-1"> |
| | | <div class="uni-input-wrapper"> |
| | | <input type="password" v-model="repassword" maxlength="140" step="" enterkeyhint="done" |
| | | class="uni-input-input" autocomplete="off" :placeholder="$t('密码')"> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="mt-15 bg-white p-14 rounded-10 flex items-center"> |
| | | <div class="w-22 h-22"> |
| | | <img src="../../assets/img/icon-invite.png" draggable="false"> |
| | | </div> |
| | | <div class="ml-9 text-black flex-1"> |
| | | <div class="uni-input-wrapper"> |
| | | <input type="" v-model="invitCode" maxlength="140" step="" enterkeyhint="done" |
| | | class="uni-input-input" autocomplete="off" :placeholder="$t('invitCode')"> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="py-17 text-center bg-black mt-80 rounded-10 text-19 font-700" @click="register">{{ |
| | | $t('register') }}</div> |
| | | </div> |
| | | <nationality-list ref='controlChildRef' :title="$t('selectArea')" @getName="getName"></nationality-list> |
| | | |
| | | <Vcode :imgs="[img1, img2]" :show="show" @success="onSuccess" :canvasHeight="200" @fail="onFail" |
| | | @close="show = false;" sliderText='' :successText="$t('vertifyPass')" :failText="$t('vertifuFail')" /> |
| | | |
| | | <div>{{ msg }}</div> |
| | | </div> |
| | | </template> |
| | | |
| | |
| | | controlChildRef.value.open(); |
| | | } |
| | | |
| | | const goBack = () => { |
| | | router.back() |
| | | } |
| | | const getName = (params) => { |
| | | icon.value = params.code; |
| | | dialCode.value = params.dialCode; |
| | |
| | | agree.value = !agree.value |
| | | } |
| | | const register = () => { |
| | | console.log(activeIndex.value,'activeIndex.value') |
| | | console.log(activeIndex.value, 'activeIndex.value') |
| | | if (activeIndex.value == 0) { |
| | | if (username.value == '') { |
| | | showToast(t('entryAccount')); |
| | |
| | | return |
| | | } |
| | | } else if (activeIndex.value == 2) { |
| | | if(!(/(^[1-9]\d*$)/.test(username.value))){ |
| | | if (!(/(^[1-9]\d*$)/.test(username.value))) { |
| | | showToast(t('entryPhone')); |
| | | return |
| | | } |
| | |
| | | showToast(t('noSamePassword')); |
| | | return |
| | | } |
| | | if (!agree.value) { |
| | | showToast(t('agreeServiceCond')); |
| | | return |
| | | } |
| | | show.value = true |
| | | // if (!agree.value) { |
| | | // showToast(t('agreeServiceCond')); |
| | | // return |
| | | // } |
| | | registerApi() |
| | | // show.value = true |
| | | } |
| | | const changeIndex = (index) => { |
| | | activeIndex.value = index; |
| | |
| | | userStore[GET_USERINFO](res) |
| | | store.state.user.userInfo = res |
| | | if (activeIndex.value == 0) { |
| | | router.push('/setFond') |
| | | // router.push('/setFond') |
| | | goBack() |
| | | } else { |
| | | router.push({ name: 'verify', query: { type: activeIndex.value, account: activeIndex.value == 1 ? username.value : `${dialCode.value}${username.value}` } }) |
| | | } |
| | |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | @import '@/assets/css/deepseek_css_20250625_30ff932.css'; |
| | | |
| | | .activeBKClick { |
| | | &:active { |
| | | background: $tab_background; |
| | |
| | | .register { |
| | | width: 100%; |
| | | box-sizing: border-box; |
| | | padding: 16px; |
| | | padding: 16px 0; |
| | | font-size: 13px; |
| | | background: url('../../assets/img/bg-login.png') 0% 0% / cover fixed; |
| | | } |
| | | |
| | | .top { |
| | |
| | | color: $color_main; |
| | | } |
| | | } |
| | | |
| | | .l_icon { |
| | | background-image: url('../../assets/img/back.svg'); |
| | | background-position: 0% 0%; |
| | | background-size: 100% 100%; |
| | | } |
| | | </style> |