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

打印 上一主题 下一主题

主题 1640|帖子 1640|积分 4920

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
一 依赖注入
利用场景:当需要多层组件需要传值 如 祖宗-》父亲-》儿子-》孙子如祖宗的数据需要直接传给孙子
祖宗组件中写:
  1. data(){return {}}
  2. provide(){
  3. return {
  4.     shujukey:'数据值'
  5. }
  6. }
复制代码
孙子组件中吸收,模板代码中直接利用{{shujukey}}获取数据
  1. data(){return {}}
  2. inject:['shujukey']
复制代码
假如想全局利用某个依赖数据,需要在main.js中修改代码createApp(App).mount('#app')为
  1. const app=createApp(App);
  2. app.provide('zuzongName','zuzongvalue')
  3. app.mount('#app')
复制代码
二 动态组件 异步加载
dom中
  1. <component :is="mycomponent"></component>
  2. <button @click="turntab">切换组件</button>
复制代码
js中
  1. import componentA from "./componentA.vue";
  2. // import componentB from "./componentB.vue";
  3. const componentB = defineAsyncComponent(() => import("./componentB.vue"));//异步加载
  4. data(){
  5.         mycomponent:'componentA'
  6. },
  7. methods:{
  8. turntab(){
  9. this.mycomponent =
  10.         this.mycomponent === "componentA" ? "componentB" : "componentA";
  11. }
  12. }
复制代码
如在切换组件的过程中不想叫组件销毁,可以利用
保持组件存活
  1. <keep-alive>
  2.     <component :is="mycomponent"></component>
  3. </keep-alive>
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

张国伟

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表