zoukankan      html  css  js  c++  java
  • vue学习笔记-prop

    用于组件


    props: ['title', 'likes', 'isPublished', 'commentIds', 'author']
    说明这个组件有
    'title', 'likes', 'isPublished', 'commentIds', 'author'这几个attribute

    以下说明组件有title,likes等等属性,并且指定对应属性的类型,当给到错误类型的值时控制台会报错

    props: {
      title: String,
      likes: Number,
      isPublished: Boolean,
      commentIds: Array,
      author: Object,
      callback: Function,
      contactsPromise: Promise // or any other constructor
    }

    props支持的类型

    String
    Number
    Boolean
    Array
    Object
    Date
    Function
    Symbol

    props定义的一些情况

    Vue.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: function () {
            return { message: 'hello' }
          }
        },
        // 自定义验证函数
        propF: {
          validator: function (value) {
            // 这个值必须匹配下列字符串中的一个
            return ['success', 'warning', 'danger'].indexOf(value) !== -1
          }
        }
      }
    })

    /***********************************prop延伸*****************************************/

    一个非 prop 的 attribute 是指传向一个组件,但是该组件并没有相应 prop 定义的 attribute。

    比如:

    一个 Bootstrap 插件使用了一个第三方的 <bootstrap-date-input> 组件,

    这个插件需要在其 <input> 上用到一个 data-date-picker attribute。我们可以将这个 attribute 添加到你的组件实例上:

    <bootstrap-date-input data-date-picker="activated"></bootstrap-date-input>

    然后这个 data-date-picker="activated" attribute 就会自动添加到 <bootstrap-date-input> 的根元素上。

     

  • 相关阅读:
    Unix Domain Socket(基于 Linux-2.4.0已更新)
    Eclipse常用设置及部分常用快捷键个人总结(MyEclipse通用)
    使用Docker安装ElasticSearch 以及我遇到的问题
    使用Docker安装MySQL
    es 索引自动删除
    k8s部署zk集群
    k8s-基于Canal来定义网络策略
    Markdown学习
    python ---- Linux压缩某个目录但要跳过指定文件
    WEB前端 ---- 学习第二天(表格、表单、css等)
  • 原文地址:https://www.cnblogs.com/xqxacm/p/12354610.html
Copyright © 2011-2022 走看看