如何解决 Vue 3 自定义渲染器错误

How to resolve Vue 3 custom renderer error

我正在尝试使用 Vue 3 和 Vite 构建自定义渲染器。渲染器正在其 original repo 中工作(克隆该存储库、npm installnpm run dev),但是当我发布该渲染器并安装到另一个项目时失败。

要重新创建,可以:

工作的自定义渲染器将 class custom-renderer 添加到每个 DOM 元素;在损坏的版本中,没有任何东西呈现给 DOM 并且在调用 mount 函数时我看到以下错误:

[Vue warn]: resolveComponent can only be used in render() or setup().

对如何修复有任何想法吗?

感谢 Ferry Kranenburg 的建议,我找到了解决方法 - 看起来问题是 Vite 添加了一些额外的功能。

我向 the renderer 添加了一个新的 build:renderer 命令,现在当我从 NPM 安装时它工作正常。该命令只是 运行 一个常规的 Typescript 编译,而不是执行 Vite 的完整构建过程。

要查看它的运行情况,您可以从上方 clone the implementation、运行 npm install mvp-renderer@latest 和 运行 npm run dev 查看它的运行情况,没有任何错误.

看起来在 Vite 中制作渲染器原型可以正常工作,但如果您想将其捆绑用于生产,则需要自行编译渲染器。再次感谢 Ferry!