provide 和 inject 是 Vue 3 Composition API 中实现祖孙跨层级通信的官方方式,祖先通过 provide 暴露响应式数据、普通值或函数,后代通过 inject 按键名获取,中间组件无需参与,支持 Symbol 键和 TypeScript 类型安全。

Vue 3 的 Composition API 中,provide 和 inject 是实现祖孙(甚至更深层)跨层级传参的官方推荐方式。它不依赖 props 逐层透传,而是建立一条“祖先→任意后代”的直连通道。关键在于:祖先用 provide 暴露数据或函数,后代用 inject 主动获取,中间组件完全无需参与。
祖先组件中使用 provide 提供数据
在顶层或中间某层祖先组件的 setup() 或








