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>
相关推荐
林晓lx14 分钟前
使用Git钩子+ husky + lint语法检查提高前端项目代码质量
前端·git·gitlab·源代码管理
王同学要变强40 分钟前
【深入学习Vue丨第二篇】构建动态Web应用的基础
前端·vue.js·学习
社恐的下水道蟑螂1 小时前
从字符串到像素:深度解析 HTML/CSS/JS 的页面渲染全过程
javascript·css·html
程序定小飞1 小时前
基于springboot的web的音乐网站开发与设计
java·前端·数据库·vue.js·spring boot·后端·spring
Hello_WOAIAI1 小时前
2.4 python装饰器在 Web 框架和测试中的实战应用
开发语言·前端·python
FinClip1 小时前
凡泰极客亮相香港金融科技周,AI助力全球企业构建超级应用
前端
武昌库里写JAVA1 小时前
element-ui 2.x 及 vxe-table 2.x 使用 css 定制主题
java·vue.js·spring boot·sql·学习
阿四1 小时前
【Nextjs】为什么server action中在try/catch内写redirect操作会跳转失败?
前端·next.js
申阳1 小时前
Day 6:04. 基于Nuxt开发博客项目-LOGO生成以及ICON图标引入
前端·后端·程序员
中国lanwp2 小时前
npm中@your-company:registry 和 registry 的区别
前端·npm·node.js