vue组件递归自己报错,本地使用正常

一个Vue组件在本地运行正常,但在上传至npm并被其他项目引入后出现错误:Failed to mount component。问题源于组件递归调用自身时,具体在Menus组件中。错误出现在尝试显示二级目录时。临时解决方案是修改package.json的main字段,将"main": "lib/vue-contextmenus.umd.min.js"改为"main": "lib/vue-contextmenus.common.js"。组件使用的是vue-contextmenus库,并通过vue-cli-service打包。
摘要由CSDN通过智能技术生成

组件本地使用正常,上传到npm后其他项目使用时报错:Failed to mount component: template or render function not defined

出问题的地方在组件递归调用自己时,代码如下:

在Menus组件内递归调用Menus,其他项目通过 npm i vue-contextmenus安装调用。

待页面展示二级目录时报错

 

后经测试,发现一个临时解决方案,暂时没找到合理的解释, 如果有大佬知道还请告知《nacker1@qq.com》,感激不尽

解决方案 :修改 package.json 里main信息

报错的引用:"main": "lib/vue-contextmenus.umd.min.js",

可正常使用的引用:"main": "lib/vue-contextmenus.common.js",

发布前通过 "lib": "vue-cli-service build --target lib --name vue-contextmenus --dest lib src/components/index.ts" 打包。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值