Vue.js 中的 Vuelidate 自定义验证函数
Vuelidate custom validation function in Vue.js
我正在使用 vuelidate 来实现验证并尝试从自定义函数访问整个数据对象(我读过第二个参数采用数据对象),但它只获取观察者并且它只有相同级别的数据在层次结构中。
我在 x11 上应用了自定义验证,然后我在第二个参数中只得到 x11 和 x12,而不是整个对象。
customFunction(value, wholeObject)
{
console.log(value); //value of x11
console.log(wholeObject); // it is printing observer x11 and x12. I was
expecting //it will print the whole x object
}
data: {
x: {
x1: {
x11,
x12
},
x2
}
},
validations: {
x: {
x1: {
x11: CustomFunction,
x12
},
x2
}
}
这是正确的行为还是我做错了什么?
您可以尝试使用以下代码吗:
function customFunction(value) {
console.log(value);
console.log(this);
return value != '';
}
data: {
x: {
x1: { x11: 'abc', x12: 'pqr'},
x2: 'lmn'
}
}
validations: {
x: {
x1: {
x11: CustomFunction,
x12: required
},
x2: required
}
}
Fiddle -> https://jsfiddle.net/7atc5mwr/
请阅读 this page 以了解如何使用自定义验证器和访问组件。
我正在使用 vuelidate 来实现验证并尝试从自定义函数访问整个数据对象(我读过第二个参数采用数据对象),但它只获取观察者并且它只有相同级别的数据在层次结构中。
我在 x11 上应用了自定义验证,然后我在第二个参数中只得到 x11 和 x12,而不是整个对象。
customFunction(value, wholeObject)
{
console.log(value); //value of x11
console.log(wholeObject); // it is printing observer x11 and x12. I was
expecting //it will print the whole x object
}
data: {
x: {
x1: {
x11,
x12
},
x2
}
},
validations: {
x: {
x1: {
x11: CustomFunction,
x12
},
x2
}
}
这是正确的行为还是我做错了什么?
您可以尝试使用以下代码吗:
function customFunction(value) {
console.log(value);
console.log(this);
return value != '';
}
data: {
x: {
x1: { x11: 'abc', x12: 'pqr'},
x2: 'lmn'
}
}
validations: {
x: {
x1: {
x11: CustomFunction,
x12: required
},
x2: required
}
}
Fiddle -> https://jsfiddle.net/7atc5mwr/
请阅读 this page 以了解如何使用自定义验证器和访问组件。