赞
踩
1.表单的基本使用: 表单
2.我们可以利用官方社区开发的WxValidate插件进行表单验证。
首先插件的下载地址和官方文档
具体的WxValidate.js文件的位置在wxextend/src/assets/plugins/wx-validate/WxValidate.js
在你需要使用该表单的js文件中,引入代码
import WxValidate from '../../utils/WxValidate.js'
const app = getApp()
Page({
data: {
form: {
name: '',
phone: ''
}
}
最需要注意的点是
每个表单必须绑定value属性,否则表单验获取不到值
在onLoad函数中加入验证规则函数
// onLoad中有多个函数的写法,onLoad函数内写函数名,函数在onLoad外定义
onLoad() {
this.getuser()
this.initValidate()//验证规则函数
}
//onLoad中只有一个函数的写法
onLoad:function(){
rules:{}
messages:{}
}
此处需要注意的是一定要在js文件中onLoad验证规则,否则编译会报checkform is not a function
然后是验证规则和报错规则的代码
//报错 showModal(error) { wx.showModal({ content: error.msg, showCancel: false, }) }, //验证函数 initValidate() { const rules = { name: { required: true, minlength:2 }, phone:{ required:true, tel:true } } const messages = { name: { required: '请填写姓名', minlength:'请输入正确的名称' }, phone:{ required:'请填写手机号', tel:'请填写正确的手机号' } } this.WxValidate = new WxValidate(rules, messages) }, //调用验证函数 formSubmit: function(e) { console.log('form发生了submit事件,携带的数据为:', e.detail.value) const params = e.detail.value //校验表单 // 对表单进行验证 if (!this.Validate.checkForm(this.data.form)) { const error = this.Validate.errorList[0] await showToast(JSON.stringify(error.msg).replace(/\"/g, "")) return false } }
对showToast函数的封装 ,在asyncFunction.js中文件定义
代码路径
export const showToast = (title) => {
return new Promise((resolve,reject) => {
wx.showToast({
title,
icon:'none',
duration: 2000
})
success: resolve
})
}
在需要使用该函数的js文件中引入
import {
showToast
} from '../../utils/asyncFunction';
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。