vue动态组件

Posted 嘴巴嘟嘟

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vue动态组件相关的知识,希望对你有一定的参考价值。

动态组件component的用法
component会接收一个名为"is"的属性

is的属性值应该为在父组件中注册过的组件的名称

用法如下:

  <component v-bind:is="view"></component> //view 是变量

案例

<template>
  <div>
    <div v-for="value in productData" :key="value.id">
      <component :is="`My${value.type}`"></component>
    </div>
  </div>
</template>

<script>
import Video from "./动态组件/Video.vue";
import Text from "./动态组件/Text.vue";
import Image from "./动态组件/Image.vue";
export default {
  name: "Slot",
  components: {
    CurrenUser,
    MyText: Text,
    MyVideo: Video,
    MyImage: Image,
  },
  data() {
    return {
      productData: [
        {
          id: 1,
          type: "Video",
        },
        {
          id: 2,
          type: "Text",
        },
        {
          id: 3,
          type: "Image",
        },
      ],
    };
  },
};
</script>

<style  scoped>
</style>

以上是关于vue动态组件的主要内容,如果未能解决你的问题,请参考以下文章

15《Vue 入门教程》Vue 动态组件 &amp;amp; keep-alive

使用自动注册的动态导入的 Vue 组件进行代码拆分

从 Relay 中的动态组件获取片段

vue3中的fragment(片段)组件

vue.js 2 - 将单个文件组件的 html 片段提取到独立文件中

Vue动态组件 & 插槽 & 自定义指令