Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

vue $attrs

作者:资本principal   发布日期:2026-04-25   浏览:77

// 父组件 ParentComponent.vue
<template>
  <div>
    <ChildComponent v-bind="$attrs" />
  </div>
</template>

<script>
import ChildComponent from './ChildComponent.vue';

export default {
  components: {
    ChildComponent
  },
  inheritAttrs: false, // 防止属性被应用到根元素上
};
</script>

// 子组件 ChildComponent.vue
<template>
  <div>
    <p>Received attrs:</p>
    <pre>{{ $attrs }}</pre>
  </div>
</template>

<script>
export default {
  props: {
    // 这里可以定义一些明确的 prop,其他未定义的属性会通过 $attrs 传递
  }
};
</script>

解释说明

  1. 父组件 (ParentComponent.vue):

    • 使用 v-bind="$attrs" 将所有未在父组件中显式定义为 props 的属性传递给子组件。
    • 设置 inheritAttrs: false 防止这些属性被应用到父组件的根元素上。
  2. 子组件 (ChildComponent.vue):

    • $attrs 是一个对象,包含了所有从父组件传递过来但未在 props 中定义的属性。
    • 在模板中使用 <pre>{{ $attrs }}</pre> 可以直观地展示接收到的属性。

上一篇:vue清除缓存

下一篇:vue 关闭eslint

大家都在看

vue.js devtools用法

three.js vue

vue js for循环

vue.min.js 本地引入

vue.js 3

highlight.js vue

vue.config.js 配置

vue.config.js 配置代理

vue.config.js devserv

vue.config.js configu

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站