VUE 动态组件 Cannot read property ‘$createElement‘ of undefined [问题已解决]

VUE 动态组件 Cannot read property '$createElement' of undefined [问题已解决]

问题描述

在vue中使用<component :is="dynamicComponent" />时,有时候会报错Cannot read property '$createElement' of undefined,导致组件无法渲染.该报错内容十分晦涩,根据报错及debugger堆栈根本找不到有用信息

解决方案

经过我的调试分析,确认原因一般时是由于没有找到组件,通常是由于组件注册名字不正确,例如大小写错误,拼写错误等等情况

在vue中使用component动态组件,必须保持组件注册的名称要与is属性传入的名字一致

请参考以下示例

<template>
<div>
	<!--错误例子,会报错-->
	<component is='dynamicComponent' />
	<!--错误例子-->
	<!--正确例子-->
	<component is='DynamicComponent' />
	<!--正确例子-->
</div>
</template>
<script>

export default {
    components: {
      DynamicComponent, 
    }
}
</script>

如果该文章对您有帮助,请点赞,谢谢!~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值