我正在使用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
}
}
这是正确的行为还是我做错了什么?
答案 0 :(得分:2)
您可以尝试使用以下代码:
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
}
}
提琴-> https://jsfiddle.net/7atc5mwr/
请阅读this page,以了解如何使用自定义验证程序以及访问组件。