动态组件 component

488 阅读1分钟

一、Vue 中常见的内置组件有哪些

  • router-link
  • router-view
  • keep-alive
  • slot
  • transition
  • transition-group
  • component(动态组件

二、Vue 中的动态组件 component

1、在 src/components下创建两个动态组件

image.png

2、App.vue 导入并注册两个动态组件,使用 component 组件

<template>
  <div>
    <button @click="componentId = 'AsyncCom1'">显示动态组件1</button>
    <button @click="componentId = 'AsyncCom2'">显示动态组件2</button>
    <!-- ◆动态组件使用 -->
    <component :is="componentId"></component>
  </div>
</template>

<script>
import AsyncCom1 from './components/AsyncCom1.vue'
import AsyncCom2 from './components/AsyncCom2.vue'
import { ref } from 'vue'
export default {
  components: {
    AsyncCom1,
    AsyncCom2
  },
  setup () {
   // 定义初始显示的那一个动态组件
    const componentId = ref('AsyncCom1')
    return { componentId }
  }
}
</script>