首先 官网基础的格式是两层的例如
第一步需要注意的。
model1: {
userInfo: {
name: '',
phone: '',
address:"",
detailedddress:""
},
},
想要自定义校验需要一层
userInfo: {
name: '',
phone: '',
address:"",
detailedddress:""
},
第二步
<u--form
labelPosition="left"
:model="userInfo"
:rules="rules"
ref="form1"
:labelStyle="labelStylea"
>
第三步
rules: {
phone: [{
type: 'string',
max: 11,
min:11,
required: true,
message: '请输入正确手机号',
trigger: ['blur', 'change']
},
{
// 自定义验证函数,见上说明
validator: mobile,
message: '手机号码不正确',
// 触发器可以同时用blur和change
trigger: ['change', 'blur'],
}
],
}
第四步
自定义规则
data() {
const mobile = (rule, value, callback) => {
/^1[3-9]\d{9}$/.test(value) ? callback() : callback(new Error('请输入正确的手机号码'))
}
return {
}
第五步
//如果是自己封装的组件就是mounted()
//如果不是组件就是onReady()
mounted() {
this.$refs.form1.setRules(this.rules);
}
根据这几步骤 写好就不会失效了