vue中的动态组件

38 篇文章 0 订阅

vue中的动态组件

概念:

动态组件指的是动态切换组件的显示与隐藏

component:

vue 提供了一个内置的 <component> 组件,专门用来实现动态组件的渲染
通过 Vue 的 <component> 元素加一个特殊的is特性来实现不同组件之间动态切换

keep-alive

默认情况下,切换动态组件时无法保持组件的状态。此时可以使用 vue 内置的<keep-alive>组件保持动态组件的状态

<template>
  <div>
    <button @click="name = 'first'">按钮1</button>
    <button @click="name = 'second'">按钮2</button>
    <button @click="name = 'third'">按钮3</button>

    <keep-alive>
     	<component :is="name"> </component>
    </keep-alive>
  </div>
</template>

<script>
import first from "./first";
import second from "./second";
import third from "./third";
export default {
  data() {
    return {
      name: "first",
    };
  },
  components: {
    first,
    second,
    third,
  },
};
</script>

<style>
</style>

说明:

component相当于一个组件的展示容器,所展示的组件会在 name 改变时改变
name的值可以是引入组件后注册时自定义的名称

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值