From 9a139cc25da8396c1b257ccf99eb8d2fedfbc94d Mon Sep 17 00:00:00 2001 From: Liuyi <candymxq888@outlook.com> Date: 星期三, 23 十月 2024 17:24:35 +0800 Subject: [PATCH] 添加校验,修改头像 --- pages/addCard/index.vue | 131 ++++++++++++++++++++++++++----------------- 1 files changed, 80 insertions(+), 51 deletions(-) diff --git a/pages/addCard/index.vue b/pages/addCard/index.vue index 8e0ef25..c9bb53c 100644 --- a/pages/addCard/index.vue +++ b/pages/addCard/index.vue @@ -21,29 +21,51 @@ } }); } +//校验 +const formRef = ref() +const rules = ref({ + waterCardNumber: { + rules:[ + {required: true,errorMessage: '请输入卡号'}] + }, + userName: { + rules:[ + {required: true,errorMessage: '请输入姓名'}, + {pattern:/^[\u4e00-\u9fa5\\.]+$/, errorMessage: '请输入中文或" . "符号'} + ] + }, + userPhone: { + rules:[ + {required: true,errorMessage: '请输入您的手机号'}, + {pattern: /^1[3-9]\d{9}$/, errorMessage: '手机号格式不正确'} + ] + }, +}) async function submit(){ - await creatUserArchive(form.value).then((res) =>{ - if(res.code == 200){ - uni.showToast({ - title: '添加成功!', - image: '../../static/images/other/success.svg', - duration:2000 - }).then(() =>{ - uni.navigateBack() - }) - }else if(res.code == 300){ - uni.showToast({ - title: res.msg, - duration:2000, - icon:'none' - }) - }else{ - uni.showToast({ - title:'绑卡失败', - duration:2000, - icon:'none' - }) - } + formRef.value.validate().then(async() =>{ + await creatUserArchive(form.value).then((res) =>{ + if(res.code == 200){ + uni.showToast({ + title: '添加成功!', + image: '../../static/images/other/success.svg', + duration:2000 + }).then(() =>{ + uni.navigateBack() + }) + }else if(res.code == 300){ + uni.showToast({ + title: res.msg, + duration:2000, + icon:'none' + }) + }else{ + uni.showToast({ + title:'绑卡失败', + duration:2000, + icon:'none' + }) + } + }) }) } onMounted(() =>{ @@ -56,6 +78,25 @@ <view class="main"> <view class="title">请填写卡及个人信息</view> <view class="form"> + <uni-forms ref="formRef" :model="form" :rules="rules" label-width = 100> + <uni-forms-item class="form-item" label="卡号:" name="waterCardNumber"> + <view class="card-item"> + <input v-model="form.waterCardNumber" placeholder="请输入卡号或扫描二维码" /> + <image @click="toScan()" src="../../static/images/addCard/code.png" alt=""></image> + </view> + </uni-forms-item> + <uni-forms-item label="姓名:" name="userName"> + <input v-model="form.userName" placeholder="请输入姓名" /> + </uni-forms-item> + <uni-forms-item label="联系方式:" name="userPhone"> + <input type="textarea" v-model="form.userPhone" placeholder="请输入手机号" /> + </uni-forms-item> + <uni-forms-item label="备注:" name="remark"> + <input type="textarea" v-model="form.remark" placeholder="请输入内容" /> + </uni-forms-item> + </uni-forms> + </view> + <!-- <view class="form"> <view class="form-item card-item"> <text>卡号:</text> <input v-model="form.waterCardNumber" placeholder="请输入卡号"/> @@ -73,10 +114,10 @@ <text>备注:</text> <input v-model="form.remark" placeholder="请输入内容"/> </view> - </view> + </view> --> <view class="tips"> <text>1、完成实名认证,方便遗失挂失及补卡等。</text> - <text>2、绑卡后,运营商可以看到您实名时填写的 姓名和电话。</text> + <text>2、绑卡后,运营商可以看到您实名时填写的姓名和电话。</text> </view> <view class="subBtn" @click="submit()">提交信息</view> </view> @@ -95,7 +136,7 @@ width:100%; height: calc(100vh - 176rpx); background:linear-gradient(to top,#FFFFFF,#E8EFFF); - padding:0 32rpx 38rpx; + padding:0 50rpx 38rpx; box-sizing:border-box; .title{ width:100%; @@ -105,38 +146,26 @@ // background: #e6e6e6; } .form{ - height: 700rpx; + height: 600rpx; width:100%; background: #FFFFFF; border-radius: 24rpx; - .form-item{ - height:100rpx; - width:96%; - border-bottom:1px solid rgba(226,226,226,0.6); - display: flex; - justify-content:space-between; - align-items: center; - margin: 0 auto; - text{ - width:160rpx; - font-weight:400; - font-size: 32rpx; - color: #000000; - margin-left: 24rpx; - // margin-right: 82rpx; - } - input{ - width: 450rpx; - :deep(.uni-input-placeholder ){ - font-weight: 300; - font-size:32rpx; - color: #ccc; - } - } + padding:30rpx 50rpx 0; + box-sizing: border-box; + input{ + line-height:100%; + height:100%; } .card-item{ + display: flex; + justify-content: space-around; + height:100%; + align-items: center; input{ width:375rpx; + margin-right:20rpx; + line-height:100%; + height:100%; } image{ width:44rpx; @@ -154,7 +183,7 @@ flex-direction: column; margin-top:56rpx; font-weight: 300; - font-size: 32rpx; + font-size:28rpx; color: #484848; text:first-child{ margin-bottom:28rpx; -- Gitblit v1.9.3