Vue------Props传值的相关操作以及总结说明

79 篇文章 3 订阅
38 篇文章 1 订阅

 

❤ prop参数的所有类型列举:

❤ 以字符串数组形式列出的 prop:

❤ 以指定类型列出的 prop:

❤ Prop 验证: 各种形式的prop参数列举

❤  Prop 的大小写命名 (camelCase vs kebab-case):


 prop参数的所有类型列举:

// 引用类型的话,默认值要为函数返回值的形式!!!
1.String 2.Number 3.Boolean 4.Array 5.Object 6.Date 7.Function 8.Symbol

 以字符串数组形式列出的 prop:

// 这种表示一般用于简单的静态传值:比如只是一个标题,或者一段文字
props: ['title', 'likes', 'isPublished', 'commentIds', 'author'],

❤ 以指定类型列出的 prop:

props: {
	title: String,
	likes: Number,
	isPublished: Boolean,
	commentIds: Array,
	author: Object,
	callback: Function,
	contactsPromise: Promise // 或任何其他构造函数
}

❤ Prop 验证: 各种形式的prop参数列举

app.component('my-component', {
  props: {
    // 基础的类型检查 (`null` 和 `undefined` 会通过任何类型验证)
    propA: Number,
    // 多个可能的类型
    propB: [String, Number],
    // 必填的字符串
    propC: {
      type: String,
      required: true
    },
    // 带有默认值的数字
    propD: {
      type: Number,
      default: 100
    },
    // 带有默认值的对象
    propE: {
      type: Object,
      // 对象或数组默认值必须从一个工厂函数获取
      default() {
        return { message: 'hello' }
      }
    },
    // 自定义验证函数
    propF: {
      validator(value) {
        // 这个值必须匹配下列字符串中的一个
        return ['success', 'warning', 'danger'].includes(value)
      }
    },
    // 具有默认值的函数
    propG: {
      type: Function,
      // 与对象或数组默认值不同,这不是一个工厂函数 —— 这是一个用作默认值的函数
      default() {
        return 'Default function'
      }
    }
  }
})

❤  Prop 的大小写命名 (camelCase vs kebab-case):

HTML 中的 attribute 名是大小写不敏感的,所以浏览器会把所有大写字符解释为小写字符。


1.使用 DOM 中的模板时,camelCase (驼峰命名法) 的 prop 名需要使用其等价的 kebab-case (短横线分隔命名) 命名;
2.如果你使用字符串模板,那么这个限制就不存在了

简单说就是: 子组件中prop名字: postTitle => 组件上的Dom中使用就(:post-title="value")传值才可以

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

绝世唐门三哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值