Yjs 使用报错

284 字
1 分钟
Yjs 使用报错

问题#

  1. 报错 Yjs was already imported. This breaks constructor checks and will lead to issues!

    通过 issue得知:出现此消息的另原因是项目的某些部分使用了 Yjs 的 cjs 版本,而某些部分使用 Yjs 的 es 版本。

    当更新依赖它的 yjs 或库时,我们经常遇到这个错误。特别是在翻新更新拉取请求中。对我们来说,解决方案很简单:检查您的 yarn.lock 或 package-lock.json 是否有多个条目!

    解决方案

    仅仅只需要添加别名即可。

    // https://vitejs.dev/config/
    export default defineConfig({
    plugins: [react()],
    resolve: {
    alias: {
    yjs: path.resolve('./node_modules/yjs/src/index.js'),
    },
    },
    })

    有时会安装嵌套的 yjs 包。可能地,node_modules 中可以有嵌套的 yjs 安装:例如节点模块 & 节点模块/@lexical/yjs/节点模块/yjs)。

    出现错误消息的另一个原因是某些复杂的构建系统同时导入 Yjs 的 commonjs (.cjs) 和模块 (.mjs) 版本。

    您可以通过明确指定要使用的版本来解决这两个问题。在 webpack 和其他捆绑器中,您可以设置别名:yjs: “node_modules/yjs/dist/yjs.mjs”。

    vite 配置中的别名建议解决了重复导入的错误。

Yjs 使用报错
https://wangxiang.website/posts/编辑器/tiptap-tutorial8/
作者
翔子
发布于
2024-04-01
许可协议
CC BY-NC-SA 4.0
Profile Image of the Author
翔子
前端开发工程师
公告
博客已从 VitePress 迁移到 Astro + Firefly 主题,223 篇文章全部保留。
音乐
封面

音乐

暂未播放

0:00 0:00
暂无歌词
分类
标签
站点统计
文章
221
分类
9
标签
28
总字数
411,914
运行时长
0
最后活动
0 天前

文章目录