lisonge / vite-plugin-monkey

A vite plugin server and build your.user.js for userscript engine like Tampermonkey, Violentmonkey, Greasemonkey, ScriptCat
MIT License
1.24k stars 65 forks source link

elementplus打包后运行时报没有createElementVnode的错误 #114

Closed 1229984599 closed 8 months ago

1229984599 commented 8 months ago

在开发模式时能够正常运行,打包后将代码复制到油猴就开始报错了。使用preview的方式也还是要报错

lisonge commented 8 months ago

解决方法应该是 cdn 链接后面应该附加一个 dataUri 脚本把 vue 挂载到 window 上能让 elementplus 访问到就行

1229984599 commented 8 months ago

解决方法应该是 cdn 链接后面应该附加一个 dataUri 脚本把 vue 挂载到 window 上能让 elementplus 访问到就行

对头,怪我没有看清楚readme那里有,一直在issue里面搜索,非常感谢作者的插件,现在写油猴简直太爽了。另外想请教一个问题,我运行时vueDemi也会报未定义,还是需要这种方式操作吗?我当时用的最笨的办法,在油猴里面加上了vueDemi的库

lisonge commented 8 months ago

我运行时vueDemi也会报未定义,还是需要这种方式操作吗?

对于一些库如 pinia ,它的依赖里是有 vue-demi 的,如果你将 pina 打包进去,那就不需要配置 vue-demi 的 cdn 链接

但是 pinia 的 iife 格式的库里没有 vue-demi,如果你对 pinia 使用 cdn 排除,也就是使用 iife 格式,那么就需要处理 pinia 的 iife 格式访问 vue-demi 的问题

一般来说有两种方法

1229984599 commented 8 months ago

我运行时vueDemi也会报未定义,还是需要这种方式操作吗?

对于一些库如 pinia ,它的依赖里是有 vue-demi 的,如果你将 pina 打包进去,那就不需要配置 vue-demi 的 cdn 链接

但是 pinia 的 iife 格式的库里没有 vue-demi,如果你对 pinia 使用 cdn 排除,也就是使用 iife 格式,那么就需要处理 pinia 的 iife 格式访问 vue-demi 的问题

一般来说有两种方法

  • 如果你用的库的 cdn 没有特别依赖 vue 的版本,只需要将 VueDemi 简单指向 Vue 即可,也就是在 vue cdn 链接后面添加 util.dataUrl('window.VueDemi=Vue')
  • 或者直接在 vue cdn 链接后面加上 https://cdn.jsdelivr.net/npm/vue-demi@latest/lib/index.iife.js

非常感觉大佬您的解答,可否贴个赞赏码出来呀,金额不多,只是想表达一下自己的谢意。确实感觉你的项目让我用着非常爽,希望能够坚持下去

lisonge commented 8 months ago

如果您撅得这个开源免费的软件帮助到了您, 并且您想通过捐赠支持这个项目, 那么可以通过以下方式捐赠

img img
1229984599 commented 8 months ago

如果您撅得这个开源免费的软件帮助到了您, 并且您想通过捐赠支持这个项目, 那么可以通过以下方式捐赠

img img 👌微信已经发过去了

lisonge commented 8 months ago

嗯嗯,已收到了,谢谢打赏