在 select 验证问题上验证空对象
Vuelidate empty object on select validation issue
我想知道如何使用 vuelidate 验证空对象。我尝试在 jsfiddle 上进行演示,链接如下
Vue.use(window.vuelidate.default)
const { required, minLength } = window.validators
new Vue(
{
el: "#app",
data: {
companies: [
{
id: 1,
name: 'facebook'
},
{
id: 2,
name: 'apple'
}
],
text: {
id: null,
name: null
}
},
validations: {
text: {
required
}
}
}
)
验证对象没有什么特别的,您只需要定义结构并添加您需要的任何验证规则。
请参阅 example I created and take another look at the Collections 文档。
$v.text
是有效的,因为它是一个 non-empty 对象。这意味着它没有 'falsy' 值,因此它符合要求。使其工作的一种方法:
validations: {
text: {
id: {required},
name: {required},
},
},
如果不想重复items对象结构,可以写一个custom validator.
vuelidate 页面的文档中缺少有关如何使用 withParams
的信息。
所以我在它的 github 页面上搜索并找到了这个 link 。
根据 link 我想出了那个解决方案
import { withParams } from 'vuelidate'
export const checkIfNull = withParams(
{ type: 'required' },
value => (value.id === null ? false : true)
)
我想知道如何使用 vuelidate 验证空对象。我尝试在 jsfiddle 上进行演示,链接如下
Vue.use(window.vuelidate.default)
const { required, minLength } = window.validators
new Vue(
{
el: "#app",
data: {
companies: [
{
id: 1,
name: 'facebook'
},
{
id: 2,
name: 'apple'
}
],
text: {
id: null,
name: null
}
},
validations: {
text: {
required
}
}
}
)
验证对象没有什么特别的,您只需要定义结构并添加您需要的任何验证规则。
请参阅 example I created and take another look at the Collections 文档。
$v.text
是有效的,因为它是一个 non-empty 对象。这意味着它没有 'falsy' 值,因此它符合要求。使其工作的一种方法:
validations: {
text: {
id: {required},
name: {required},
},
},
如果不想重复items对象结构,可以写一个custom validator.
vuelidate 页面的文档中缺少有关如何使用 withParams
的信息。
所以我在它的 github 页面上搜索并找到了这个 link 。
根据 link 我想出了那个解决方案
import { withParams } from 'vuelidate'
export const checkIfNull = withParams(
{ type: 'required' },
value => (value.id === null ? false : true)
)