vue知识点总结 依赖注入 动态组件 异步加载

一 依赖注入

使用场景:当需要多层组件需要传值 如 祖宗-》父亲-》儿子-》孙子 如祖宗的数据需要直接传给孙子

祖宗组件中写:

javascript 复制代码
data(){return {}}
provide(){
return {
    shujukey:'数据值'
}
}

孙子 组件中接收,模板代码中直接使用{``{shujukey}}获取数据

javascript 复制代码
data(){return {}}
inject:['shujukey']

如果想全局使用某个依赖数据,需要在main.js中修改代码createApp(App).mount('#app')

javascript 复制代码
const app=createApp(App);
app.provide('zuzongName','zuzongvalue')
app.mount('#app')

二 动态组件 异步加载

dom中

javascript 复制代码
 <component :is="mycomponent"></component>
 <button @click="turntab">切换组件</button>

js中

javascript 复制代码
import componentA from "./componentA.vue";
// import componentB from "./componentB.vue";
const componentB = defineAsyncComponent(() => import("./componentB.vue"));//异步加载

data(){
	mycomponent:'componentA'
},
methods:{
turntab(){
 this.mycomponent =
        this.mycomponent === "componentA" ? "componentB" : "componentA";
}
}

如在切换组件的过程中不想叫组件销毁,可以使用

保持组件存活

javascript 复制代码
<keep-alive>
    <component :is="mycomponent"></component>
</keep-alive>
相关推荐
不知更鸟4 分钟前
前端报错:快速解决Django接口404问题
前端·python·django
D***t13136 分钟前
React图像处理案例
前端
万少1 小时前
我是如何使用 Trae IDE 完成《流碧卡片》项目的完整记录
前端·后端·ai编程
9***Y481 小时前
前端微服务
前端·微服务·架构
ByteCraze1 小时前
我整理的大文件上传方案设计
前端·javascript
前端小白۞2 小时前
vue2 md文件预览和下载
前端·javascript·vue.js
十里-2 小时前
为什么创建1x1的gif图片,和png 或者jpg图片有什么区别
前端
u***u6852 小时前
Vue云原生
前端·vue.js·云原生
OpenTiny社区2 小时前
TinyEngine 低代码实时协作揭秘:原理 +实操,看完直接用!
前端·vue.js·低代码
喵个咪2 小时前
go-kratos-admin 技术栈深度解析:为什么选 Golang+Vue3 这套组合?
vue.js·go