zoukankan      html  css  js  c++  java
  • Vue2.4.0 新增的inheritAttrs,attrs

    官方inheritAttrs,attrs文档https://cn.vuejs.org/v2/guide/components-props.html,从最下面的'非 Prop 的特性'开始看,看到最后

    Vue2.4.0 新增的inheritAttrs,attrs
    1.适用于Vue中全套层数深的组件,从父组件向子组件传递数据(除style和class)
    2.当一个组件没有声明任何prop时候,attrs里面包含着全部的上层组件传递的所有数据(除style和class)
    3.当声明了prop时候,attrs里面包含除去prop里面的数据剩下的数据。

    inheritAttrs
    1.当在子组件中设置inheritAttrs: false的时候,attrs里面的属性不会当做html的data属性渲染在dom节点之上。
    2.在子组件中不进行设置inheritAttrs的时候,attrs里面的属性会渲染在html节点之上
    3.当设置为inheritAttrs: false的时候,在组件的声明周期中可以通过 this.$attrs 获取里面的上层组件数据。

    以上说明来自https://blog.csdn.net/qq_15253407/article/details/82964047

    看官方文档时,以为class也适用inheritAttrs,attrs,可以传递给子孙组件,作为属性使用,
    但是实际开发过程中发现适用inheritAttrs,attrs除style和class的其他属性且子组件没有在props里面声明该属性才可以
    当在子组件中设置inheritAttrs: false的时候,attrs里面的属性是没有style和class的

  • 相关阅读:
    NAS与SAN RAID
    使用slice和concat对数组的深拷贝和浅拷贝
    使用JSON.parse(),JSON.stringify()实现对对象的深拷贝
    ng2父子模块通信@ViewChild和@Inject
    js避免命名冲突
    JSON.parse()和JSON.stringify()
    object类型转换为Array类型
    Angular 2 ViewChild & ViewChildren
    ElementRef, @ViewChild & Renderer
    ng2父子模块数据交互
  • 原文地址:https://www.cnblogs.com/HYZhou2018/p/11159257.html
Copyright © 2011-2022 走看看