关于vue中el-date-picker type=daterange表单校验问题

1.表单中的校验v-model必须以表单的model:model="form"开头v-model="form.dateRange",因为rules是基于表单进行校验的,当prop为dateRange时,会自动查找this.form.dateRange的值。如果v-model="dateRange"校验失效,查找的值会一直为null

<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="日期区间" prop="dateRange">
     <el-date-picker
     v-model="form.dateRange"
     type="daterange"
     size="small"
     value-format="yyyy-MM-dd"
     range-separator="-"
     start-placeholder="开始日期"
     end-placeholder="结束日期"
     ></el-date-picker>
</el-form-item>
</el-form>

2.校验规则

rules: {
        dateRange: [
          {
            type: 'array',
            required: true,
            message: '请选择日期区间',
            fields: {
              //tpye类型试情况而定,所以如果返回的是date就改成date
              0: { type: 'string', required: true, message: '请选择开始日期' },
              1: { type: 'string', required: true, message: '请选择结束日期' }
            }
          }
        ]
        }

3.初始值赋值使用$set方法,如果直接使用=,后续修改和清除都会失效

//日期区间回显
this.$set(this.form, 'dateRange', [response.data.data.startDate, response.data.data.endDate])
  • 20
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值