vue:通过Prop向子组件传递数据的两种方法使用对比

缺乏、安全感 2023-02-09 13:16 91阅读 0赞

使用props来接受父组件传递的属性、数据

props定义的方式有两种,一种是数组,一种是对象。

数组方式:

  1. props: ['title']

使用数组定义无法校验参数,如果需要校验参数可以使用对象方式。

对象方式:
如果我们希望每个 prop 都有指定的值类型,可以以对象形式列出 prop,这些 property 的名称和值分别是 prop 各自的名称和类型:

  1. Vue.component('my-component', {
  2. props: {
  3. // 基础的类型检查 (`null` 和 `undefined` 会通过任何类型验证)
  4. propA: Number,
  5. // 多个可能的类型
  6. propB: [String, Number],
  7. // 必填的字符串
  8. propC: {
  9. type: String,
  10. required: true
  11. },
  12. // 带有默认值的数字
  13. propD: {
  14. type: Number,
  15. default: 100
  16. },
  17. // 带有默认值的对象
  18. propE: {
  19. type: Object,
  20. // 对象或数组默认值必须从一个工厂函数获取
  21. default: function () {
  22. return { message: 'hello' }
  23. }
  24. },
  25. // 自定义验证函数
  26. propF: {
  27. validator: function (value) {
  28. // 这个值必须匹配下列字符串中的一个
  29. return ['success', 'warning', 'danger'].indexOf(value) !== -1
  30. }
  31. }
  32. }
  33. })

发表评论

表情:
评论列表 (有 0 条评论,91人围观)

还没有评论,来说两句吧...

相关阅读

    相关 VUE组件组件传递数据

      在使用VUE开发的时候,有时候,我们需要通过父组件像子组件传递数据或者为了防止每个子组件都会有请求数据事件的发生,从而导致代码冗余,所以,我们可以把同一个模块下的所有子组