vue 解决循环引用组件/动态组件/组件未注册报错

使用动态组件报错

Unknown custom element: - did you register the component correctly? For recursive components, make sure to provide the "name" option.

<template>
  <div>
    <div v-for="(item, index) in list" :key="index">
      <component :is="item"></component>
    </div>
  </div>
</template>
<script>
// 先把组件引入
import ImageComponent from './Image.vue'
import TextComponent from './Text.vue'
import VideoComponent from './Video.vue'
export default {
  components: {
    ImageComponent,
    TextComponent,
    VideoComponent
  },
  data () {
    return {
      list: ['ImageComponent', 'TextComponent', 'VideoComponent']
    }
  }
}
</script>

解决如下

生命周期中临时注册一下

    beforeCreate() {
      this.$options.components.ImageComponent= require('./ImageComponent.vue').default
    }

搞定了~~

posted @   糖~豆豆  阅读(2340)  评论(1编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决
Live2D
欢迎阅读『vue 解决循环引用组件/动态组件/组件未注册报错』
点击右上角即可分享
微信分享提示