博文

Vue 3 透传 Attributes 第五章:inheritAttrs 配置项的作用与使用

扫描 二维码 关注或者微信搜一搜: 编程智域 前端至全栈交流与成长 发现 1000+ 提升效率与开发的 AI 工具和实用程序 : https://tools.cmdragon.cn/ 一、inheritAttrs 的作用 1.1 默认行为 默认情况下, inheritAttrs 的值为 true ,这意味着: 单根组件的未声明 attributes 会自动透传到根元素 多根组件的未声明 attributes 不会自动透传 1.2 禁用自动透传 设置 inheritAttrs: false 可以禁用自动透传行为: < script setup > defineOptions ({   inheritAttrs : false }) </ script > 这样,attributes 不会自动添加到根元素上,需要通过 v-bind="$attrs" 手动绑定。 1.3 工作流程对比 true 默认 单根组件 多根组件 false 父组件传递 Attributes inheritAttrs 值 组件类型 自动透传到根元素 不透传 都不自动透传 需要手动 v-bind=$attrs 二、设置 inheritAttrs 的方法 2.1 script setup 中设置(Vue 3.3+) < script setup > defineOptions ({   inheritAttrs : false }) </ script > 2.2 Options API 中设置 < script > export default {   inheritAttrs : false ,   props : [ 'label' ] } </ script > 2.3 混用 script setup 和 Options API < script > export default {   inheritAttrs : false } </ script > ​ < script setup > import { useAttrs } from 'vue' ​ const attrs = useA...