Vue3从入门到精通 09

目录:

1. 组件传递Props校验

1.1 默认数据类型

1.2 指定数据类型

1.3 默认值 default

1.4 必选项 required

1.5 Props 只读属性

组件传递Props校验

Vue 组件可以更细致地声明对传入的 props 的校验要求。

默认数据类型





Props校验说明

要声明对 props 的校验,你可以向 props 选项提供一个带有 props 校验选项的对象

export default {
  props: {
    // 基础类型检查
    //(给出 `null` 和 `undefined` 值则会跳过任何类型检查)
    propA: Number,
    // 多种可能的类型
    propB: [String, Number],
    // 必传,且为 String 类型
    propC: {
      type: String,
      required: true
    },
    // Number 类型的默认值
    propD: {
      type: Number,
      default: 100
    },
    // 对象类型的默认值
    propE: {
      type: Object,
      // 对象或者数组应当用工厂函数返回。
      // 工厂函数会收到组件所接收的原始 props
      // 作为参数
      default(rawProps) {
        return { message: 'hello' }
      }
    },
    // 自定义类型校验函数
    propF: {
      validator(value) {
        // The value must match one of these strings
        return ['success', 'warning', 'danger'].includes(value)
      }
    },
    // 函数类型的默认值
    propG: {
      type: Function,
      // 不像对象或数组的默认,这不是一个
      // 工厂函数。这会是一个用来作为默认值的函数
      default() {
        return 'Default function'
      }
    }
  }
}

一些补充细节:

所有 prop 默认都是可选的,除非声明了 required: true。

除 Boolean 外的未传递的可选 prop 将会有一个默认值 undefined。

Boolean 类型的未传递 prop 将被转换为 false。这可以通过为它设置 default 来更改——例如:设置为 default: undefined 将与非布尔类型的 prop 的行为保持一致。

如果声明了 default 值,那么在 prop 的值被解析为 undefined 时,无论 prop 是未被传递还是显式指明的 undefined,都会改为 default 值。

指定数据类型





默认值 default

数字和字符串可以直接default,如果是对象和数组,则必须通过函数返回默认值

当组件传递数据,未传递,则直接使用默认值:





必选项 required

所有 prop 默认都是可选的,除非声明了 required: true。





props 只读属性

组件props 传递过去 的数据不允许修改





展开阅读全文

页面更新:2024-03-05

标签:数组   数据类型   函数   组件   选项   属性   入门   对象   声明   类型   数据

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2008-2024 All Rights Reserved. Powered By bs178.com 闽ICP备11008920号-3
闽公网安备35020302034844号

Top