From 48dd8be3d25e5b6d8bfa57ad757569f470f5ff74 Mon Sep 17 00:00:00 2001 From: xuxueyang <xuxy@fengyuntec.com> Date: 星期五, 12 七月 2024 15:49:25 +0800 Subject: [PATCH] update组件 --- pages/login/supplier-login.vue | 67 ++ pages/home/home.vue | 7 sub_pages/supplier/supplier-reg/supplier-reg.vue | 839 ++++++++++++++++++++++++---------------------- pages/home/supplier-home.vue | 34 pages.json | 33 - sub_pages/supplier/flower-manage/flower-manage.vue | 2 App.vue | 90 ++-- 7 files changed, 565 insertions(+), 507 deletions(-) diff --git a/App.vue b/App.vue index 6bdaa3c..b44273d 100644 --- a/App.vue +++ b/App.vue @@ -1,74 +1,70 @@ <script> // 合伙人: "appid" : "wx6d0ecc4e18710458", - // 花农: "appid" : "wx3203fd935a6ffe09", + // 花农: "appid" : "wx3203fd935a6ffe09", // 花店 wx1441324401626290 import storage from '@/plugins/storage.js' export default { onLaunch: function(options) { - // #ifdef MP - // { - // if(decodeURIComponent(options.query.q)) - // if (options.inviter) { - // //说明是邀请的,需要保存下来, - // this.$storage.setItem('inviter', options.inviter) - // //有效24小时 - // this.$storage.setItem('inviterTime', new Date().getTime()) - - // } - // if (options.inviterName) { - // this.$storage.setItem('inviterName', options.inviterName) - // this.inviterName = options.inviterName - // }else{ - // this.inviterName = this.$storage.getItem('inviterName') || '' - // } - // } - // #endif console.warn('当前组件仅支持 uni_modules 目录结构 ,请升级 HBuilderX 到 3.1.0 版本以上!') console.log('App Launch') uni.getSystemInfo({ success: (e) => { - // this.globalData.StatusBar = e.statusBarHeight; - let custom = uni.getMenuButtonBoundingClientRect(); - // this.globalData.Custom = custom; - // this.globalData.CustomBar = custom.bottom + custom.top - e.statusBarHeight; - uni.setStorageSync('StatusBar', e.statusBarHeight); - uni.setStorageSync('CustomBar', (custom.bottom + custom.top - e.statusBarHeight)); + try { + let custom = uni.getMenuButtonBoundingClientRect(); + uni.setStorageSync('StatusBar', e.statusBarHeight); + uni.setStorageSync('CustomBar', (custom.bottom + custom.top - e.statusBarHeight)); + } catch (e) { + console.error('e', e) + } } }); // #ifdef MP if (true && storage.getItem('token')) { setTimeout(async () => { const res = await this.$store.dispatch('getCurrentInfo'); - // console.log('init info',res,this.currentInfo) - // #ifdef PUB_CUSTOMER - if (this.currentInfo && this.currentInfo.id && !this.currentInfo.openId) { - uni.reLaunch({ - url: '/pages/home/supplier-home' - }) - } + // #ifndef PUB_CUSTOMER + if (this.currentInfo && this.currentInfo.id && !this.currentInfo.openId) { + uni.reLaunch({ + url: '/pages/home/supplier-home' + }) + } else { + uni.reLaunch({ + url: '/pages/login/supplier-login' + }) + } // #endif }, 200); } else { - + // #ifndef PUB_CUSTOMER + uni.reLaunch({ + url: '/pages/login/supplier-login' + }) + // #endif } // #endif - // #ifdef H5 - if (true && storage.getItem('token')) { - setTimeout(async () => { - const res = await this.$store.dispatch('getCurrentInfo'); - // console.log('init info',res,this.currentInfo) - if (this.currentInfo && this.currentInfo.id && !this.currentInfo.openId) { - // uni.reLaunch({ - // url: '/pages/home/supplier-home' - // }) - } - }, 200); - } else { - - } + // #ifdef PUB_CUSTOMER + uni.reLaunch({ + url: '/pages/home/home' + }) // #endif + + // // #ifdef H5 + // if (true && storage.getItem('token')) { + // setTimeout(async () => { + // const res = await this.$store.dispatch('getCurrentInfo'); + // // console.log('init info',res,this.currentInfo) + // if (this.currentInfo && this.currentInfo.id && !this.currentInfo.openId) { + // // uni.reLaunch({ + // // url: '/pages/home/supplier-home' + // // }) + // } + // }, 200); + // } else { + + // } + // // #endif }, onReady() { diff --git a/pages.json b/pages.json index ef06e85..84c27fd 100644 --- a/pages.json +++ b/pages.json @@ -4,18 +4,6 @@ "^u-(.*)": "uview-ui/components/u-$1/u-$1.vue" }, "pages": [ - - // #ifdef PUB_CUSTOMER - { - "path": "pages/home/home", - "style": { - "navigationBarTitleText": "首页", - "enablePullDownRefresh": true, - "navigationStyle": "custom" - } - - }, - // #endif { "path": "pages/login/supplier-login", "style": { @@ -31,7 +19,18 @@ "navigationStyle": "custom" } - }, + }, + // #ifdef PUB_CUSTOMER + { + "path": "pages/home/home", + "style": { + "navigationBarTitleText": "首页", + "enablePullDownRefresh": true, + "navigationStyle": "custom" + } + + }, + // #endif { "path": "pages/user/supplier-user", "style": { @@ -199,13 +198,5 @@ "app-plus": { "background": "#efeff4" } - }, - "condition": { //模式配置,仅开发期间生效 - "current": 0, //当前激活的模式(list 的索引项) - "list": [{ - "name": "", //模式名称 - "path": "", //启动页面,必选 - "query": "" //启动参数,在页面的onLoad函数里面得到 - }] } } \ No newline at end of file diff --git a/pages/home/home.vue b/pages/home/home.vue index 22681a1..1059f80 100644 --- a/pages/home/home.vue +++ b/pages/home/home.vue @@ -176,10 +176,11 @@ // if (res.code == 0) { // this.schools = res.data || [] // } + // }) + + // uni.navigateTo({ + // url: '/sub_pages/customer/trade/detail' // }) - uni.navigateTo({ - url: '/sub_pages/customer/trade/detail' - }) //获取banner图 this.$http.request('get', '/api/ua/banner/list', { diff --git a/pages/home/supplier-home.vue b/pages/home/supplier-home.vue index c3ce2fa..f19e19a 100644 --- a/pages/home/supplier-home.vue +++ b/pages/home/supplier-home.vue @@ -224,24 +224,24 @@ this.scrollable = false } let that = this - if (this.noticeList.length >= 1) { - setInterval(() => { - console.log('interval,1') - that.currentNoticeIndex += 1 - that.currentNoticeIndex %= that.noticeList.length - that.currentNotice = that.noticeList[that.currentNoticeIndex] - that.scrollable = false - that.$nextTick(() => { - if (that.currentNotice.title && that.currentNotice.title - .length >= 30) { - that.scrollable = true - } else { - that.scrollable = false - } - }) + // if (this.noticeList.length >= 1) { + // setInterval(() => { + // console.log('interval,1') + // that.currentNoticeIndex += 1 + // that.currentNoticeIndex %= that.noticeList.length + // that.currentNotice = that.noticeList[that.currentNoticeIndex] + // that.scrollable = false + // that.$nextTick(() => { + // if (that.currentNotice.title && that.currentNotice.title + // .length >= 30) { + // that.scrollable = true + // } else { + // that.scrollable = false + // } + // }) - }, 8000) - } + // }, 8000) + // } } } diff --git a/pages/login/supplier-login.vue b/pages/login/supplier-login.vue index 4ad70ff..51b358a 100644 --- a/pages/login/supplier-login.vue +++ b/pages/login/supplier-login.vue @@ -13,24 +13,36 @@ <view class="title-1">HELLO</view> <view class="title-2">欢迎登录<span class="title-3">花满芜</span></view> </view> - <view class="t-a input" v-if="loginType=='pwd'"> - <input type="text" name="userName" placeholder="请输入账号" v-model="userName" /> + <view class="t-a input form-input" v-if="loginType=='pwd'"> + <!-- <input type="text" name="userName" placeholder="请输入账号" v-model="userName" /> --> + <u-input placeholder="请输入账号" :border="false" v-model="userName"></u-input> + </view> - <view class="t-a input" v-if="loginType=='pwd'"> - <input type="text" :password="true" name="password" placeholder="请输入密码" v-model="password" /> + <view class="t-a input form-input" v-if="loginType=='pwd'"> + <!-- <input type="text" :password="true" name="password" placeholder="请输入密码" v-model="password" /> --> + <u-input :password="true" :border="false" placeholder="请输入密码" v-model="password"></u-input> </view> - <view class="t-a input" v-if="loginType=='code'"> + <view class="t-a input form-input" v-if="loginType=='code'"> - <input type="text" name="userName" placeholder="请输入手机号" v-model="phoneNumber" /> +<!-- <input type="text" name="userName" placeholder="请输入手机号" v-model="phoneNumber" /> <view class="get-code" :style="{'color':getCodeBtnColor}" @click.stop="getCode()"> {{getCodeText}} - </view> + </view> --> + <u-input placeholder="请输入手机号" :border="false" v-model="phoneNumber"> + <template slot="suffix"> + <view class="get-code" :style="{'color':getCodeBtnColor}" @click.stop="getCode()"> + {{getCodeText}} + </view> + </template> + </u-input> </view> - <view class="t-a input" v-if="loginType=='code'"> - <input type="text" name="userName" placeholder="请输入手机验证码" v-model="smsCode" /> + <view class="t-a form-input" v-if="loginType=='code'"> + <!-- <input type="text" name="userName" placeholder="请输入手机验证码" v-model="smsCode" /> --> + <u-input placeholder="请输入手机验证码" :border="false" v-model="smsCode"></u-input> + </view> <button @tap="login()" class="bottom-button">登 录</button> @@ -39,7 +51,10 @@ <view class="topic-font" v-if="loginType=='pwd'" @click="loginType='code'">手机验证码登录</view> <view class="topic-font" v-if="loginType=='code'" @click="loginType='pwd'">账号密码登录</view> + <!-- #ifdef PUB_SUPPLIER --> <view class="topic-font m-l-a m-r-0" @click="toReg">前往注册</view> + + <!-- #endif --> </view> </form> </view> @@ -91,7 +106,8 @@ }; }, methods: { - async getCode() { + async getCode() { + console.log('getCode') uni.hideKeyboard() //隐藏已经显示的软键盘,如果软键盘没有显示则不做任何操作。 if (this.getCodeisWaiting) { return; @@ -242,7 +258,24 @@ } }; </script> +<style lang="scss" scoped> + .form-input { + background-color: #f8f7fc; + border-radius: 50rpx; + margin-bottom: 50rpx; + border: 1px solid #e9e9e9; + /deep/ .u-input{ + padding-left: 60rpx !important; + padding-right: 40rpx !important; + } + /deep/ input { + height: 70rpx; + line-height: 70rpx; + + } + } +</style> <style lang="scss" scoped> @import './login.scss'; @@ -303,7 +336,7 @@ } .t-login input { - padding: 0 20rpx 0 120rpx; + padding: 0 20rpx 0 60rpx; height: 90rpx; line-height: 90rpx; margin-bottom: 50rpx; @@ -317,9 +350,9 @@ position: relative; .get-code { - position: absolute; - right: 40rpx; - top: 25rpx; + // position: absolute; + // right: 40rpx; + // top: 25rpx; } } @@ -404,9 +437,9 @@ font-size: 27rpx; } - .t-login .uni-input-placeholder { - color: #000; - } + // .t-login .uni-input-placeholder { + // color: #000; + // } .cl { zoom: 1; diff --git a/sub_pages/supplier/flower-manage/flower-manage.vue b/sub_pages/supplier/flower-manage/flower-manage.vue index bd03816..e6f8311 100644 --- a/sub_pages/supplier/flower-manage/flower-manage.vue +++ b/sub_pages/supplier/flower-manage/flower-manage.vue @@ -5,7 +5,7 @@ <view @click.stop="clickButton('in')" class="button button-search-in"></view> <view @click.stop="clickButton('unpass')" class="button button-search-unpass"></view> <view @click.stop="clickButton('inpass')" class="button button-search-inpass" style="flex:5"></view> - <view @click.stop="clickButton('delete')" class="button button-search-delete"></view> + <view @click.stop="clickButton('delete')" class="button button-search-delete" style="margin-top: -1rpx;"></view> </view> diff --git a/sub_pages/supplier/supplier-reg/supplier-reg.vue b/sub_pages/supplier/supplier-reg/supplier-reg.vue index 7bdfc5f..4773dd7 100644 --- a/sub_pages/supplier/supplier-reg/supplier-reg.vue +++ b/sub_pages/supplier/supplier-reg/supplier-reg.vue @@ -1,404 +1,441 @@ -<template> - <view class="main-container login-container img100 relative" style="margin-top: 0rpx;"> - <image class="component-bg" - src="https://hmy-flower.oss-cn-shanghai.aliyuncs.com/a5/a54508de179a4942918ecb2c5a4aa9f5bg.png" - mode="scaleToFill" /> - - - <view class="t-login top-bg"> - <view class="nav-title">注册</view> - <view class="login"> - <form class="cl"> - <view class="t-a titles-top"> - <view class="title-1">HELLO</view> - <view class="title-2">欢迎入驻<span class="title-3">花满芜</span></view> - </view> - - - <view class="t-a input" v-if="loginType=='code'"> - - - <input type="text" name="userName" placeholder="请输入手机号" v-model="phoneNumber" /> - <view class="get-code" :style="{'color':getCodeBtnColor}" @click.stop="getCode()"> - {{getCodeText}} - </view> - </view> - - - <view class="t-a input" v-if="loginType=='code'"> - <input type="text" name="userName" placeholder="请输入手机验证码" v-model="smsCode" /> - </view> - <view class="t-a input" v-if="loginType=='code'"> - <input type="text" :password="true" name="password" placeholder="请输入密码" v-model="password" /> - </view> - <button @tap="login()" class="bottom-button">注 册</button> - - <view class="flex"> - <view class="topic-font m-l-a m-r-0" @click="toLogin">前往登录</view> - </view> - <view class="flex flex-wrap-normal" style="position: fixed;bottom: 40rpx;left: 40rpx;right: 40rpx;" v-if="false"> - <view :style="{'margin-top': '8rpx','margin-right': '12rpx','font-size':'24rpx'}" - @click="protocal=!protocal" - class="component-radio" :class="[protocal?'cur':'']"> - - </view> - <view class="topic-gray" @click="toProtocol">请仔细阅读《花满芜合伙人供应商入口小程序隐私保护指引》如您同意该指引,请勾选开始使用本小程序</view> - </view> - </form> - </view> - </view> - </view> -</template> -<script> - // import util from '@/utils/util.js' - // import gzmzApi from '@/api/gzmzApi.js' - // import myCache from '@/utils/myCache.js' - export default { - data() { - return { - openId: '-1', - - userName: '', - password: '', - - phoneNumber: '', - smsCode: '', - - checked: false, - loginType: 'code', //pwd和code,密码和验证码登录 - pcfvalue: undefined, - getCodeText: '获取验证码', - getCodeBtnColor: "#20613D", - getCodeisWaiting: false, - Timer: undefined, - protocal:false - }; - }, - methods: { - toProtocol(){ - uni.navigateTo({ - url:'/sub_pages/supplier/protocol' - }) - }, - async getCode() { - // await this.$message.confirm('是否同意入驻协议') - // this.protocal = true - console.log('getCode') - uni.hideKeyboard() //隐藏已经显示的软键盘,如果软键盘没有显示则不做任何操作。 - if (this.getCodeisWaiting) { - return; - } - if (!(/^1(3|4|5|6|7|8|9)\d{9}$/.test(this.phoneNumber))) { //校验手机号码是否有误 - uni.showToast({ - title: '请填写正确手机号码', - icon: "none" - }); - return false; - } - this.getCodeText = "发送中..." //发送验证码 - this.getCodeisWaiting = true; - this.getCodeBtnColor = "#000" //追加样式,修改颜色 - //示例用定时器模拟请求效果 - //setTimeout(()用于在指定的毫秒数后调用函数或计算表达式 - const { - code - } = await this.$http.request('post', '/api/sms/send/code', { - data: { - tel: this.phoneNumber, - userType: 'supplier' - } - }) - if (code == 0) { - uni.showToast({ - title: '验证码已发送', - icon: "none" - }); - this.setTimer(); //调用定时器方法 - } - // setTimeout(() => { - // //弹出提示框 - // //示例默认1234,生产中请删除这一句。 - // // this.code = '1234'; //发送验证码,进行填入 - - // }, 1000) - }, - //setTimer: 需要每隔一段时间执行一件事的的时候就需要使用SetTimer函数 - setTimer() { - let holdTime = 60; //定义变量并赋值 - this.getCodeText = "重新获取(60)" - //setInterval()是一个实现定时调用的函数,可按照指定的周期(以毫秒计)来调用函数或计算表达式。 - //setInterval方法会不停地调用函数,直到 clearInterval被调用或窗口被关闭。 - this.Timer = setInterval(() => { - if (holdTime <= 0) { - this.getCodeisWaiting = false; - this.getCodeBtnColor = "#20613D"; - this.getCodeText = "获取验证码" - clearInterval(this.Timer); //清除该函数 - return; //返回前面 - } - this.getCodeText = "重新获取(" + holdTime + ")" - holdTime--; - }, 1000) - }, - toLogin() { - uni.redirectTo({ - url: '/pages/login/supplier-login' - }) - - }, - changeAll(e) { - this.pcfvalue = e.detail.value[0] - }, - async login() { - uni.showLoading({ - title: '登陆中' - }); - var that = this; - if (!that.phoneNumber) { - uni.showToast({ - title: '请输入手机号', - icon: 'none' - }); - return; - } - if (!that.smsCode) { - uni.showToast({ - title: '请输入手机验证码', - icon: 'none' - }); - return; - } - if (!that.password) { - uni.showToast({ - title: '请输入密码', - icon: 'none' - }); - return; - } - // if (this.pcfvalue == undefined) { - // util.showMyToast('必须勾选《用户服务协议》及《隐私政策》'); - // return; - // } - let post = { - tel: this.phoneNumber, - smsCode: this.smsCode, - password: this.password, - // openId: '123456789' - } - // const { - // code - // } = await this.$http.request('get', '/api/login/admin') - const resp = await this.$store.dispatch('regSupplier', post); - // uni.hideLoading() - - if (resp.code == 0) { - - // myCache.cache("userToken", res.data.accessToken) - // let userRes = await gzmzApi.getMemberInfo(); - // if (userRes.status) { - // myCache.cache("userInfo", JSON.stringify(userRes.data)) - // } - uni.showToast({ - title: '注册成功!', - icon: 'none' - }); - setTimeout(() => { - this.toLogin() - }, 1000); - - } else { - uni.showToast({ - title: '登录失败!', - icon: 'none' - }); - return; - } - - }, - tc1(id) { - uni.navigateTo({ - url: '/pages/users/xieyi?id=' + id, - }); - } - } - }; -</script> - -<style lang="scss" scoped> - @import '@/pages/login/login.scss'; - - .main-container { - margin: 20px 0; - } - - .img-a { - position: absolute; - width: 100%; - top: -150rpx; - right: 0; - } - - .img-b { - position: absolute; - width: 50%; - bottom: 0; - left: -120rpx; - } - - .to-home { - margin-top: 30rpx; - font-size: 30rpx; - color: #5af; - display: flex; - flex-direction: row-reverse; - } - - .t-login { - width: 100%; - margin: 0 auto; - font-size: 28rpx; - color: #000; - } - - .t-login .bg { - width: 100%; - position: relative; - } - - .t-login .login { - width: 650rpx; - margin: 60rpx auto; - margin-top: 0rpx; - font-size: 28rpx; - color: #000; - } - - .t-login button { - font-size: 28rpx; - background: #5677fc; - color: #fff; - height: 90rpx; - line-height: 90rpx; - border-radius: 50rpx; - box-shadow: 0 5px 7px 0 rgba(86, 119, 252, 0.2); - } - - .t-login input { - padding: 0 20rpx 0 120rpx; - height: 90rpx; - line-height: 90rpx; +<template> + <view class="main-container login-container img100 relative" style="margin-top: 0rpx;"> + <image class="component-bg" + src="https://hmy-flower.oss-cn-shanghai.aliyuncs.com/a5/a54508de179a4942918ecb2c5a4aa9f5bg.png" + mode="scaleToFill" /> + + + <view class="t-login top-bg"> + <view class="nav-title">注册</view> + <view class="login"> + <form class="cl"> + <view class="t-a titles-top"> + <view class="title-1">HELLO</view> + <view class="title-2">欢迎入驻<span class="title-3">花满芜</span></view> + </view> + + + <view class="t-a form-input" v-if="loginType=='code'"> + <u-input placeholder="请输入手机号" :border="false" v-model="phoneNumber"> + <template slot="suffix"> + <view class="get-code" :style="{'color':getCodeBtnColor}" @click.stop="getCode()"> + {{getCodeText}} + </view> + </template> + </u-input> + + <!-- <u-input type="text" name="userName" placeholder="请输入手机号" v-model="phoneNumber" + style="position: relative;z-index: 1;" /> --> + + + </view> + + + <view class="t-a form-input" v-if="loginType=='code'"> + <!-- <input type="text" name="userName" placeholder="请输入手机验证码" v-model="smsCode" + style="position: relative;z-index: 1;" /> --> + <u-input placeholder="请输入手机验证码" :border="false" v-model="smsCode"></u-input> + + </view> + <view class="t-a form-input" v-if="loginType=='code'"> + <!-- <input type="text" :password="true" name="password" placeholder="请输入密码" v-model="password" /> --> + + <u-input :password="true" :border="false" placeholder="请输入密码" v-model="password"></u-input> + </view> + + <button @tap="login()" class="bottom-button">注 册</button> + + <view class="flex"> + <view class="topic-font m-l-a m-r-0" @click="toLogin">前往登录</view> + </view> + <view class="flex flex-wrap-normal" style="position: fixed;bottom: 40rpx;left: 40rpx;right: 40rpx;" + v-if="false"> + <view :style="{'margin-top': '8rpx','margin-right': '12rpx','font-size':'24rpx'}" + @click="protocal=!protocal" class="component-radio" :class="[protocal?'cur':'']"> + + </view> + <view class="topic-gray" @click="toProtocol">请仔细阅读《花满芜合伙人供应商入口小程序隐私保护指引》如您同意该指引,请勾选开始使用本小程序 + </view> + </view> + </form> + </view> + </view> + </view> +</template> +<script> + // import util from '@/utils/util.js' + // import gzmzApi from '@/api/gzmzApi.js' + // import myCache from '@/utils/myCache.js' + export default { + data() { + return { + openId: '-1', + + userName: '', + password: '', + + phoneNumber: '', + smsCode: '', + + checked: false, + loginType: 'code', //pwd和code,密码和验证码登录 + pcfvalue: undefined, + getCodeText: '获取验证码', + getCodeBtnColor: "#20613D", + getCodeisWaiting: false, + Timer: undefined, + protocal: false + }; + }, + methods: { + toProtocol() { + uni.navigateTo({ + url: '/sub_pages/supplier/protocol' + }) + }, + async getCode() { + // await this.$message.confirm('是否同意入驻协议') + // this.protocal = true + console.log('getCode') + setTimeout(() => { + uni.hideKeyboard() //隐藏已经显示的软键盘,如果软键盘没有显示则不做任何操作。 + }, 200) + + if (this.getCodeisWaiting) { + return; + } + if (!(/^1(3|4|5|6|7|8|9)\d{9}$/.test(this.phoneNumber))) { //校验手机号码是否有误 + uni.showToast({ + title: '请填写正确手机号码', + icon: "none" + }); + return false; + } + this.getCodeText = "发送中..." //发送验证码 + this.getCodeisWaiting = true; + this.getCodeBtnColor = "#000" //追加样式,修改颜色 + //示例用定时器模拟请求效果 + //setTimeout(()用于在指定的毫秒数后调用函数或计算表达式 + const { + code + } = await this.$http.request('post', '/api/sms/send/code', { + data: { + tel: this.phoneNumber, + userType: 'supplier' + } + }) + if (code == 0) { + uni.showToast({ + title: '验证码已发送', + icon: "none" + }); + this.setTimer(); //调用定时器方法 + } + // setTimeout(() => { + // //弹出提示框 + // //示例默认1234,生产中请删除这一句。 + // // this.code = '1234'; //发送验证码,进行填入 + + // }, 1000) + }, + //setTimer: 需要每隔一段时间执行一件事的的时候就需要使用SetTimer函数 + setTimer() { + let holdTime = 60; //定义变量并赋值 + this.getCodeText = "重新获取(60)" + //setInterval()是一个实现定时调用的函数,可按照指定的周期(以毫秒计)来调用函数或计算表达式。 + //setInterval方法会不停地调用函数,直到 clearInterval被调用或窗口被关闭。 + this.Timer = setInterval(() => { + if (holdTime <= 0) { + this.getCodeisWaiting = false; + this.getCodeBtnColor = "#20613D"; + this.getCodeText = "获取验证码" + clearInterval(this.Timer); //清除该函数 + return; //返回前面 + } + this.getCodeText = "重新获取(" + holdTime + ")" + holdTime--; + }, 1000) + }, + toLogin() { + uni.redirectTo({ + url: '/pages/login/supplier-login' + }) + + }, + changeAll(e) { + this.pcfvalue = e.detail.value[0] + }, + async login() { + uni.showLoading({ + title: '登陆中' + }); + var that = this; + if (!that.phoneNumber) { + uni.showToast({ + title: '请输入手机号', + icon: 'none' + }); + return; + } + if (!that.smsCode) { + uni.showToast({ + title: '请输入手机验证码', + icon: 'none' + }); + return; + } + if (!that.password) { + uni.showToast({ + title: '请输入密码', + icon: 'none' + }); + return; + } + // if (this.pcfvalue == undefined) { + // util.showMyToast('必须勾选《用户服务协议》及《隐私政策》'); + // return; + // } + let post = { + tel: this.phoneNumber, + smsCode: this.smsCode, + password: this.password, + // openId: '123456789' + } + // const { + // code + // } = await this.$http.request('get', '/api/login/admin') + const resp = await this.$store.dispatch('regSupplier', post); + // uni.hideLoading() + + if (resp.code == 0) { + + // myCache.cache("userToken", res.data.accessToken) + // let userRes = await gzmzApi.getMemberInfo(); + // if (userRes.status) { + // myCache.cache("userInfo", JSON.stringify(userRes.data)) + // } + uni.showToast({ + title: '注册成功!', + icon: 'none' + }); + setTimeout(() => { + this.toLogin() + }, 1000); + + } else { + uni.showToast({ + title: '登录失败!', + icon: 'none' + }); + return; + } + + }, + tc1(id) { + uni.navigateTo({ + url: '/pages/users/xieyi?id=' + id, + }); + } + } + }; +</script> +<style lang="scss" scoped> + .form-input { + background-color: #f8f7fc; + border-radius: 50rpx; margin-bottom: 50rpx; - background: #f8f7fc; - border: 1px solid #e9e9e9; - font-size: 28rpx; - border-radius: 50rpx; - } - - .t-login .t-a { - position: relative; - - .get-code { - position: absolute; - right: 40rpx; - top: 25rpx; - z-index: 99; + border: 1px solid #e9e9e9; + /deep/ .u-input{ + padding-left: 60rpx !important; + padding-right: 40rpx !important; + } + /deep/ input { + height: 70rpx; + line-height: 70rpx; + } - } - - .t-login .t-a .icon { - width: 40rpx; - height: 40rpx; - position: absolute; - left: 24rpx; - top: 14rpx; - margin-right: 20rpx; - } - - .t-login .t-a .line { - width: 2rpx; - height: 40rpx; - background-color: #dedede; - position: absolute; - top: 28rpx; - left: 98rpx; - } - - .t-login .t-b { - text-align: left; - font-size: 46rpx; - color: #000; - padding: 300rpx 0 30rpx 0; - font-weight: bold; - } - - .t-login .t-b2 { - text-align: left; - font-size: 32rpx; - color: #aaaaaa; - padding: 0rpx 0 120rpx 0; - } - - .t-login .t-c { - position: absolute; - right: 22rpx; - top: 22rpx; - background: #5677fc; - color: #fff; - font-size: 24rpx; - border-radius: 50rpx; - height: 50rpx; - line-height: 50rpx; - padding: 0 25rpx; - z-index: 999; - } - - .t-login .t-d { - text-align: center; - color: #999; - margin: 80rpx 0; - } - - .t-login .t-e { - text-align: center; - width: 250rpx; - margin: 80rpx auto 0; - } - - .t-login .t-g { - float: left; - width: 50%; - } - - .t-login .t-e image { - width: 50rpx; - height: 50rpx; - } - - .t-login .t-f { - text-align: center; - margin: 200rpx 0 0 0; - color: #666; - } - - .t-login .t-f text { - margin-left: 20rpx; - color: #aaaaaa; - font-size: 27rpx; - } - - .t-login .uni-input-placeholder { - color: #000; - } - - .cl { - zoom: 1; - } - - .cl:after { - clear: both; - display: block; - visibility: hidden; - height: 0; - content: '\20'; - } + + } +</style> +<style lang="scss" scoped> + @import '@/pages/login/login.scss'; + + .main-container { + margin: 20px 0; + } + + .img-a { + position: absolute; + width: 100%; + top: -150rpx; + right: 0; + } + + .img-b { + position: absolute; + width: 50%; + bottom: 0; + left: -120rpx; + } + + .to-home { + margin-top: 30rpx; + font-size: 30rpx; + color: #5af; + display: flex; + flex-direction: row-reverse; + } + + .t-login { + width: 100%; + margin: 0 auto; + font-size: 28rpx; + color: #000; + } + + .t-login .bg { + width: 100%; + position: relative; + } + + .t-login .login { + width: 650rpx; + margin: 60rpx auto; + margin-top: 0rpx; + font-size: 28rpx; + color: #000; + } + + .t-login button { + font-size: 28rpx; + background: #5677fc; + color: #fff; + height: 90rpx; + line-height: 90rpx; + border-radius: 50rpx; + box-shadow: 0 5px 7px 0 rgba(86, 119, 252, 0.2); + } + + .t-login input { + padding: 0 20rpx 0 60rpx; + height: 90rpx; + line-height: 90rpx; + margin-bottom: 50rpx; + background: #f8f7fc; + border: 1px solid #e9e9e9; + font-size: 28rpx; + border-radius: 50rpx; + } + + .t-login .t-a { + position: relative; + + .get-code { + // position: absolute; + // right: 0rpx; + // top: 0rpx; + // z-index: 99; + // padding-top: 25rpx; + // bottom: 0; + // padding-right: 40rpx; + // padding-left: 20rpx; + } + } + + .t-login .t-a .icon { + width: 40rpx; + height: 40rpx; + position: absolute; + left: 24rpx; + top: 14rpx; + margin-right: 20rpx; + } + + .t-login .t-a .line { + width: 2rpx; + height: 40rpx; + background-color: #dedede; + position: absolute; + top: 28rpx; + left: 98rpx; + } + + .t-login .t-b { + text-align: left; + font-size: 46rpx; + color: #000; + padding: 300rpx 0 30rpx 0; + font-weight: bold; + } + + .t-login .t-b2 { + text-align: left; + font-size: 32rpx; + color: #aaaaaa; + padding: 0rpx 0 120rpx 0; + } + + .t-login .t-c { + position: absolute; + right: 22rpx; + top: 22rpx; + background: #5677fc; + color: #fff; + font-size: 24rpx; + border-radius: 50rpx; + height: 50rpx; + line-height: 50rpx; + padding: 0 25rpx; + z-index: 999; + } + + .t-login .t-d { + text-align: center; + color: #999; + margin: 80rpx 0; + } + + .t-login .t-e { + text-align: center; + width: 250rpx; + margin: 80rpx auto 0; + } + + .t-login .t-g { + float: left; + width: 50%; + } + + .t-login .t-e image { + width: 50rpx; + height: 50rpx; + } + + .t-login .t-f { + text-align: center; + margin: 200rpx 0 0 0; + color: #666; + } + + .t-login .t-f text { + margin-left: 20rpx; + color: #aaaaaa; + font-size: 27rpx; + } + + .t-login .uni-input-placeholder { + color: #000; + } + + .cl { + zoom: 1; + } + + .cl:after { + clear: both; + display: block; + visibility: hidden; + height: 0; + content: '\20'; + } </style> \ No newline at end of file -- Gitblit v1.9.3