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

vue provide inject

作者:为你丶偶尔温柔一次   发布日期:2026-01-16   浏览:104

// 父组件 ParentComponent.vue
<template>
  <div>
    <child-component></child-component>
  </div>
</template>

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

export default {
  components: {
    ChildComponent
  },
  provide() {
    return {
      message: 'Hello from parent!'
    };
  }
};
</script>

// 子组件 ChildComponent.vue
<template>
  <div>
    {{ message }}
  </div>
</template>

<script>
export default {
  inject: ['message']
};
</script>

解释说明

  1. provide:

    • 在父组件中,provide 选项用于提供数据或方法给其所有子孙组件。
    • provide 返回的对象中的属性可以在所有子孙组件中通过 inject 来注入使用。
  2. inject:

    • 在子组件中,inject 选项用于注入来自祖先组件的属性。
    • 在上面的例子中,子组件通过 inject 获取了父组件提供的 message 属性,并在模板中直接使用它。
  3. 父子组件关系:

    • 父组件通过 provide 提供了一个名为 message 的属性,值为 'Hello from parent!'
    • 子组件通过 inject 注入了这个 message 属性,并在模板中显示出来。

这种方式可以简化跨层级组件之间的通信,特别是在多层嵌套组件的情况下。

上一篇:vue await async

下一篇:vue extends

大家都在看

vue.js devtools用法

three.js vue

vue js for循环

highlight.js vue

vue.config.js 配置

vue.config.js 配置代理

vue.config.js configu

node.js vue

vue3 写法

vue3组件传值的方式

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

Laravel 中文站