当前位置: 首页 > article >正文

『VUE』27. 透传属性与inheritAttrs(详细图文注释)

目录

    • 什么是透传属性(Forwarding Attributes)
    • 使用条件唯一根节点
    • 禁用透传属性继承
    • 总结


欢迎关注 『VUE』 专栏,持续更新中
欢迎关注 『VUE』 专栏,持续更新中

什么是透传属性(Forwarding Attributes)

在 Vue.js 中,透传属性(Forwarding Attributes)是指在组件中将父组件传递给子组件的属性,直接传递给子组件内部的某个特定元素或子组件。这样可以使得父组件的属性在子组件中使用,而无需显式地在子组件中声明这些属性。


使用条件唯一根节点

相当于<h3>透传属性</h3>获得了<AttrComponent class="attr-container" />class="attr-container"

如果有如下结构,有两个h3那么不是唯一的根节点,不会生效

<template>
  <h3>透传属性</h3>
  <h3>透传属性2</h3>
</template>

在这里插入图片描述

App.vue

<template>
  <!-- <GlobalHeader />
  <Main />
  <Aside /> -->
  <!-- <Parent /> -->
  <!-- <ComponentEvent /> -->
  <!-- <ComponentP /> -->
  <AttrComponent class="attr-container" />
</template>

<script>
// import Header from "./page/Header.vue";
// import Main from "./page/Main.vue";
// import Aside from "./page/Aside.vue";
// import Child from "./components/Child.vue";
// import Parent from "./components/Parent.vue";
// import ComponentEvent from "./components/ComponentEvent.vue";
// import ComponentEventSon from "./components/ComponentEventSon.vue";
// import Main from "./components/Main.vue";
// import ComponentP from "./components/ComponentP.vue";
import AttrComponent from "./components/AttrComponent.vue";

export default {
  components: {
    // Header,
    // Main,
    // Aside,
    // Child,
    // Parent,
    // ComponentEvent,
    // ComponentEventSon,
    // Main,
    // ComponentP,
    AttrComponent,
  },
};
</script>

<style scoped></style>
./components/ComponentP.vue

AttrComponent.vue

<template>
  <h3>透传属性</h3>
</template>

<style>
.attr-container {
  color: red;
}
</style>


禁用透传属性继承

使用 inheritAttrs: false: 在子组件中将 inheritAttrs 设置为 false,可以阻止自动将父组件的属性应用到根元素上,需要手动处理透传属性。

在这里插入图片描述
AttrComponent.vue

<template>
  <h3>透传属性</h3>
  <!-- <h3>透传属性2</h3> -->
</template>

<script>
export default {
  inheritAttrs: false,
};
</script>

<style>
.attr-container {
  color: red;
}
</style>


总结

大家喜欢的话,给个👍,点个关注!给大家分享更多计算机专业学生的求学之路!

版权声明:

发现你走远了@mzh原创作品,转载必须标注原文链接

Copyright 2024 mzh

Crated:2024-3-1

欢迎关注 『VUE』 专栏,持续更新中
欢迎关注 『VUE』 专栏,持续更新中
『未完待续』



http://www.kler.cn/a/396730.html

相关文章:

  • CC6学习记录
  • flutter字体大小切换案例 小字体,标准字体,大字体,超大字体案例
  • 网络原理-网络层和数据链路层
  • C++静态成员
  • SQL面试题——蚂蚁SQL面试题 连续3天减少碳排放量不低于100的用户
  • 微信小程序自定义顶部导航栏(适配各种机型)
  • unity小:shaderGraph不规则涟漪、波纹效果
  • axios 实现 无感刷新方案
  • 哈佛商业评论 | 未来商业的技术趋势:百度李彦宏谈技术如何变革商业
  • Java集合 List——针对实习面试
  • hot100--数组
  • 数据研发基础| 什么是数据漂移
  • 推荐一款流程图和图表绘制工具:WizFlow Flowcharter Pro
  • 【python系列】python数据类型之数字类型
  • el-table 纵向垂直表头处理
  • Rust编程与项目实战-特质(Trait)
  • 雷达信号处理的流程和恒虚警检测CFAR
  • Linux通过端口号找到程序启动路径(Ubuntu20)
  • 贝叶斯网络——基于概率的图模型(详解)
  • Molecular signatures database (MSigDB) 3.0
  • 使用YOLOv9进行图像与视频检测
  • 浪浪云轻量服务器搭建vulfocus网络安全靶场
  • kubesphere环境-本地Harbor仓库+k8s集群(单master 多master)+Prometheus监控平台部署
  • ctfshow(328)--XSS漏洞--存储型XSS
  • 2024年11月第2个交易周收盘总结
  • VLC-QT----Linux编译并运行示例