Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

自定义组件在tmagic-editor项目中正常运行,但是runtime打包后放到tmagic-admin项目中后无法正常显示。 #561

Closed
jacksion1234 opened this issue Dec 20, 2023 · 4 comments

Comments

@jacksion1234
Copy link

描述
基于luckyCanvas这个库实现了一个大转盘抽奖的自定义组件,该组件存放在在tmagic-editor/rumtime/vue3/components文件夹下,在tmagic-editor项目下是可以正常展示的,runtime打包后将其产物放到tmagic-admin项目中后无法正常显示。

操作步骤
1、在tmagic-editor/rumtime/vue3路径下安装@lucky-canvas/vue依赖,在tmagic-editor/rumtime/vue3/playground/main.ts及tmagic-editor/rumtime/vue3/playground/main.ts分别引入该库;
2、在tmagic-editor/rumtime/vue3/components基于上述组件库开发自定义组件并在packages/ui下定义自定义组件路径以及其他基本操作,此时在tmagic-editor中是可以正常展示的;
3、在tmagic-editor/rumtime/vue3路径下,执行npm run build,完成后,将tmagic-editor/playground/public下的产物按照相应路径放入tmagic-admin中,运行tmagic-admin项目,项目其他自定义组件正常展示,但是基于lucky-canvas定义的组件会报错,报错信息见下面截图。

问题截图
image
image

期望
想知道这是什么导致的,开始觉得可能luckyCanvas库的原因,我单独在一个基础的vue3.3环境中引入了luckyCanvas库,并且打包后部署,但是它是正常展示的,所以现在没有思路了,希望大佬能指导一下。

环境

  • 系统:windows10
  • Browser:chrome
  • node::v18.19.0
@jia000
Copy link
Collaborator

jia000 commented Dec 20, 2023

看着像是组件的兼容问题吧,你可以尝试一下用它的js版本自己封装vue组件,不要用它提供的vue组件

@jacksion1234
Copy link
Author

谢谢回复,经过一段时间排查后,发现把runtime/vue3项目的打包配置中的externalGlobals配置中的Vue项取消掉,这样打包后不使用在线的Vue地址,那个组件就不会报错了,可能是组件Vue的引用路径问题,总之先这样解决吧。

@jia000
Copy link
Collaborator

jia000 commented Dec 20, 2023

这个组件为了兼容2.x版本使用vue-demi,估计是这样导致存在两个vue版本

@jacksion1234
Copy link
Author

应该是,其实之前在网上查到的解决方案也是说有重复的vue版本,但是一直觉得不是这个问题,还是基本功不扎实,总之感谢大佬解答。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants