Vue多类型道具验证

时间:2020-09-16 06:40:30

标签: vue.js

如何在Vue中验证多类型道具?我有以下代码,并且将icon属性作为布尔值传递不会通过验证。

icon: {
  type: [String, Boolean],
  default: null,
  validator: value => ['start', 'end'].includes(value)
}

1 个答案:

答案 0 :(得分:1)

您可以使用typeof关键字来确定参数的类型,然后决定是否通过。

icon: {
  type: [String, Boolean],
  default: null,
  validator: value => typeof value === 'string' 
                ? ['start', 'end'].includes(value) 
                : value // it will pass if value is true else not.
}