首页 > 其他分享 >子父组件

子父组件

时间:2022-10-09 11:45:32浏览次数:42  
标签:英文翻译 return props 组件 子父 type 属性

父组件给子组件传值

  • 1、在定义子组件的地方添加一个 props (英文翻译:支撑,维持)选项
    这个选项是一个数组,数组里面是父组件内的自定义属性名
    子组件直接从数组里面拿变量名来用,可以理解为:只要子组件的props找父组件要来了东西,就和自己的东西一样,父亲怎么用儿子也怎么用

  • 实际用的时候 第一步:在子组件里面添加 props:[] 选项
    第二步:在子组件的属性里 绑定上从父组件那里拿来的变量名 (这个子组件是在父组件的template里的那个子组件名)
    第三步:在子组件自己的template里直接和父组件一样{{xxx}}使用就可以了

  • 2、props除了可以是数组[]以外还可以是对象{}
    对象的key值为自定义属性名,value为数据类型(不会报错,不影响程序运行,警告代码不严谨)

    props:{
        msg:String,
        flag:Boolean,
        num:String | Number,
        obj:Object,
        arr:Array
      }
    

    可以理解为:用了对象可以检测从父组件那边拿来的变量的typeOf如果不对就警告一下,但是不影响页面的显示

  • 3、props在传递对象的时候不仅仅只判定类型而已还可以加别的限制修饰

       props:{
        msg:{
          type:String,
          required:false,
          default:'hello vue',
          validator:(val)=>{
            // return true 就是验证通过
            return val.length >=20
          }
        },
        flag:Boolean,
        num:{
          type:Number,
          // type:String|Number,
          default:100
        },
        arr:{
          type:Array,
          default:()=>{
            return [1,2,3]
          }
        },
        obj:{
          type:Object,
          default:()=>{
            return {a:1,b:2}
          }
        }
      }
    
    • type (英文翻译:类型)验证属性类型 我们最好不要验证多属性类型 像这样 type:String|Number 因为这样会报错 但文档里并没说这个
    • required (英文翻译:需要的)该属性是否必须传递,即使有默认值还是必须传递 require:true 就是父组件的这个变量子组件必须使用,如果没用就会警告
    • default (英文翻译:默认的)设置一个默认的值,如果用的时候没有重新传值,就直接使用默认值 (在子组件定义了父组件的属性,但在父组件的template的子组件里却没有用这个属性,那么就会按props定义的顺序输出默认值,必传属性和默认属性冲突 既然必传为true那就肯定要传,不传的时候才启用默认值)
      注意:::在父组件的template的子组件里绑定了这个属性 我们就称作父组件给子组件传了 传的就是绑定的这个变量 没有在这里的子组件标签上绑定这个变量 我们就说 没传。
    • validator (英文翻译:检验器)可以自定义验证规则 val就是传的值 return就是验证的条件
       validator:(val)=>{
         // return true 就是验证通过
         return val.length >=20
       }
    

标签:英文翻译,return,props,组件,子父,type,属性
From: https://www.cnblogs.com/maxiaohu/p/16771564.html

相关文章

  • 界面组件DevExpress WinForms v22.1 - 数据可视化功能全新升级
    DevExpressWinForms拥有180+组件和UI库,能为WindowsForms平台创建具有影响力的业务解决方案。DevExpressWinForms能完美构建流畅、美观且易于使用的应用程序,无论是Office......
  • Vue3组件库打包指南,一次生成esm、esm-bundle、commonjs、umd四种格式
    本文为Varlet组件库源码主题阅读系列第二篇,读完本篇,你可以了解到如何将一个Vue3组件库打包成各种格式上一篇里提到了启动服务前会先进行一下组件库的打包,运行的命令为:v......
  • [云原生] Kubernetes 控制平面组件:etcd
    EtcdEtcd是CoreOS基于Raft开发的分布式key-value存储,可用于服务发现、共享配置以及一致性保障(如数据库选主、分布式锁等)。在分布式系统中,如何管理节点间的状态一直是一个......
  • [云原生] Kubernetes 控制平面组件:生命周期管理和服务发现
    Pod的生命周期包括初始化容器,容器启动之后钩子函数,就绪探测,存活探测,容器关闭前Hook函数,对应的流程图如下:Pod周期的过程如下5步:1.初始化容器阶段初始化pod中每一个容器,......
  • 路由组件
    路由组件自动生成路由action装饰器的使用路由Routers对于视图集ViewSet,我们除了可以自己手动指明请求方式与动作action之间的对应关系外,还可以使用Routers来帮......
  • Cmakelist如何添加自己的组件
    在components文件夹下添加各组件的CMakeList,其中可以设置的变量如下:COMPONENT_SRCS:要编译进当前组件的源文件的路径,推荐使用此方法向构建系统中添加源文件。COMPONENT_SRC......
  • Vue2组件
    组件创建组件的定义:实现应用中局部功能代码和资源的集合定义组件Vue.extend(option)option:和nnewVue(option)里的option几乎一致,但有点区别el不写原因:最终所有......
  • 移动端 element + vue 二次封装上传图片的组件
    功能:支持预览、长按图片保存、删除项目中使用:1<el-form-itemlabel="上传照片"class="ml30">2<e-upload-image3v-model="image"4......
  • .NETCore .NET6中一些常用组件的配置及使用记录,持续更新中。。。
    .NETCore.NET6中一些常用组件的配置及使用记录,持续更新中。。。  NET6App介绍.NET6的CoreApp框架,用来学习.NET6的一些变动和新特性,使用EFCore,等一系列组件的运......
  • 阿里巴巴开源限流组件Sentinel初探之集成Gateway
    1Sentinel主页​​github.com/alibaba/Sen…​​1.1Sentinel介绍随着微服务的流行,服务和服务之间的稳定性变得越来越重要。Sentinel是面向分布式服务架构的流量控制组件,......