1.功能说明
在开发过程中,在子组件中如何获取父组件或者祖父级的数据。这个我们之前的做法是在子组件中找到父组件实例,然后使用父组件的数据。这样其实不是很自然。
在vue 中提供了 provide 和 inject 的功能,这个功能的作用是,在父组件中提供某些数据,在子或孙中获取这些数据。
2. 示例
2.1 编辑父页面
<template>
<div>
<input type="text" v-model="config.name">
<Child></Child>
</div>
</template>
<script>
import Child from "@/views/modules/demo/child";
export default {
name: "provide",
components: {Child},
provide(){
return {
config:this.config
}
},
data(){
return {
config:{
name:""
}
}
}
}
</script>
这里我们可以看到我们增加了一个 provide ,这个provide 提供的是一个 config 对象。
2.2 编辑子组件
<template>
<div>
<sun-component></sun-component>
</div>
</template>
<script>
import SunComponent from "@/views/modules/demo/sun";
export default {
name: "child",
components: {SunComponent}
}
</script>
这个组件什么都不做,只是引用孙组件。
2.3 编辑孙组件
<template>
<div>
{{config.name}}
</div>
</template>
<script>
export default {
name: "sunComponent",
//这里我们注入了一个config对象
inject:["config"]
}
</script>
2.4 效果
这里我们看到从父组件向孙组件传递数据,这里也是实现了解耦。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
2010-09-28 tomcat 集群配置方法