123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184 |
- <template>
- <view class="container">
- <view class="wrapper">
- <view class="input-content">
- <view class="cu-form-group" style="border: 2upx solid whitesmoke;margin-bottom: 20px;border-radius: 30px">
- <view class="title">手机号</view>
- <input type="number" :value="phone" placeholder="请输入新手机号" maxlength="11" data-key="phone" @input="inputChange" />
- </view>
- <view class="cu-form-group" style="border: 2upx solid whitesmoke;margin-bottom: 20px;border-radius: 30px">
- <text class="title">验证码</text>
- <input type="number" :value="code" placeholder="请输入验证码" maxlength="6" data-key="code" @input="inputChange"
- @confirm="toLogin" />
- <button class="send-msg" @click="sendMsg" :disabled="sending">{{sendTime}}</button>
- </view>
- </view>
- <button class="confirm-btn" @click="toLogin">保存</button>
- </view>
- </view>
- </template>
- <script>
- export default {
- data() {
- return {
- code: '',
- phone: '',
- password: '',
- sending: false,
- sendTime: '获取验证码',
- count: 60,
- logining: false
- }
- },
- methods: {
- sendMsg() {
- const {
- phone
- } = this;
- if (!phone) {
- this.$queue.showToast("请输入手机号");
- } else if (phone.length !== 11) {
- this.$queue.showToast("请输入正确的手机号");
- } else {
- this.$queue.showLoading("正在发送验证码...");
- this.$Request.getT("/msg/sendMsg/" + phone + "/bind").then(res => {
- if (res.status === 0) {
- this.sending = true;
- this.$queue.showToast('验证码发送成功请注意查收');
- this.countDown();
- uni.hideLoading();
- } else {
- uni.hideLoading();
- uni.showModal({
- showCancel: false,
- title: '短信发送失败',
- content: res.msg ? res.msg : '请一分钟后再获取验证码'
- });
- }
- });
- }
- },
- countDown() {
- const {
- count
- } = this;
- if (count === 1) {
- this.count = 60;
- this.sending = false;
- this.sendTime = '获取验证码'
- } else {
- this.count = count - 1;
- this.sending = true;
- this.sendTime = count - 1 + '秒后重新获取';
- setTimeout(this.countDown.bind(this), 1000);
- }
- },
- inputChange(e) {
- const key = e.currentTarget.dataset.key;
- this[key] = e.detail.value;
- },
- navBack() {
- uni.navigateBack();
- },
- navTo(url) {
- uni.navigateTo({
- url
- })
- },
- toLogin() {
- if(this.code == ''){
- this.$queue.showToast("请输入验证码");
- }else{
- let userId = this.$queue.getData("userId");
- const {
- phone,
- password,
- code
- } = this;
- if (!phone) {
- this.$queue.showToast("请输入手机号");
- }else {
- this.logining = true;
- this.$queue.showLoading("加载中...");
- this.$Request.getT("/user/changePhone", {
- userId : userId ,
- phone: phone,
- msg: code
- }).then(res => {
- uni.hideLoading();
- if (res.status === 0) {
- uni.navigateTo({
- url: '/pages/my/userstatus'
- });
- } else {
- uni.showModal({
- showCancel: false,
- title: '绑定手机号失败',
- content: res.msg,
- });
- }
- });
- }
- }
- },
- },
- }
- </script>
- <style lang='scss'>
- page {
- background: #1c1b20;
- }
- .send-msg {
- border-radius: 30px;
- color: white;
- height: 30px;
- font-size: 14px;
- line-height: 30px;
- background: #5E81F9;
- }
- .container {
- padding-top: 32upx;
- position: relative;
- width: 100%;
- height: 100%;
- overflow: hidden;
- background: #1c1b20;
- }
- .wrapper {
- position: relative;
- z-index: 90;
- background: #1c1b20;
- padding-bottom: 20px;
- }
- .input-content {
- padding: 32upx 80upx;
- }
- .confirm-btn {
- width: 600upx;
- height: 80upx;
- line-height: 80upx;
- border-radius: 60upx;
- margin-top: 32upx;
- background: #5E81F9;
- color: #fff;
- font-size: 32upx;
- &:after {
- border-radius: 60px;
- }
- }
- </style>
|