Vuelidate - 比较当前验证对象中的日期

时间:2021-03-29 16:18:25

标签: javascript vue.js validation object vuelidate

我正在使用 Vue,并为数据对象中“bookingDateSet”中的每个日期“设置”呈现 2 个日期选择器。

我正在尝试使用 Vuelidate 验证日期,并且“必需”验证工作正常。

但是,我正在努力比较每个日期集中的开始日期和结束日期。每个集合中的开始日期必须早于结束日期。

我猜我可能需要将索引传递给自定义验证函数,但在文档中找不到如何执行此操作 - 或者如果可能的话。这是我的验证对象:

validations: {
    bookingDateSet: {
        $each: {
            dateFrom: {
                required,
                beforeDateTo(value) {
                    return (
                        value <= this.dateTo
                    )
                }
            },
            dateTo: {
                required,
                afterDateFrom(value, i) {
                    return value >= this.dateFrom
                }
            },
        },

我希望 'this' 可能指向当前的 $each,或者我可以做类似 this.bookingDateSet[i].dateTo 的事情,但两者都不起作用。

bookingDateSet 对象在数据对象中构建如下:

bookingDateSet: [
    {
        dateFrom: null,
        dateTo: null
    }
    {
        dateFrom: null,
        dateTo: null
    }
],

如果有人能指出我正确的方向,我将不胜感激。谢谢。

0 个答案:

没有答案
相关问题