【问题标题】:Array of props in vue js?vue js中的道具数组?
【发布时间】:2018-08-30 23:57:57
【问题描述】:

在 Javascript 中,我可以使用异构数组,例如:

var ex = ['name', 12, true];
console.log(ex);

在单个文件模板中的 Vue JS 中,我可以通过以下方式在 <script></script 部分中为组件定义道具:

export default{
props: ['myprop']
}

或者通过将道具列为对象来验证类型

export default{
  props: {
    myprop: String
  }
}

现在我的问题是在 vue 中列出一个类型数组,例如 myprop: [String,Array] 列出该属性的多个有效类型。

我的问题是如何在道具级别验证数组的内容?

例如,以字符串、数字、布尔值和 3 的模式取 ex。如果不是这种形式,有没有办法使进入 prop 的任何值无效?

因此,如果我以[true, 12, 'name'] 的形式获得一些数据,它将是无效的。 但是 ex 是有效的。

【问题讨论】:

    标签: javascript vue.js


    【解决方案1】:

    如果我遵循,您想使用自定义属性验证器功能。比如:

    props: {
      myprop: {
        type: Array,
        validator: value => {
           return /* test value length, indices types, etc here as truthy/falsy */;
        }
      }
    }
    

    type 属性只是针对类型的简单验证,自定义验证器允许您准确自定义构成组件有效属性的内容。

    【讨论】:

      猜你喜欢
      • 2023-03-14
      • 2019-03-13
      • 2018-05-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-04
      • 2021-02-12
      • 2018-09-23
      相关资源
      最近更新 更多