问题标签 [sharedb]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
82 浏览

javascript - ShareDB with JSON-Patch (CRF-6902)

If I read the documentation correctly, one needs to create "JSON0 OT Type" records for any change in the target data-model and send these to the ShareDB backend for transformation and forwarding to other clients. There also seems to be a newer "JSON1 OT Type".

Since I have a libray which already produces JSON-Patch records, I was wondering if it is possible to use this JSON-Patch (CRF-6902) standard to specify the changes to the ShareDB backend.

0 投票
0 回答
42 浏览

node.js - 有没有办法将 Apollo GraphQL 订阅与 ShareDB 一起使用,而不是使用常规的 WS 连接?

我正在处理一个使用 QuillJS 和 Apollo GraphQL 的项目。我正在尝试实施协作编辑。到目前为止,我正在使用突变将文档更改发送到服务器,并使用 apollo 订阅从其他文档成员那里获取更改。问题是我的更改不同步,每个成员的编辑器的编辑结果都不同。

到目前为止,我看到一个解决方案可以是 ShareDB,但它使用常规 WS 连接,我找不到任何关于如何将它与 GraphQL 订阅集成的示例。

有谁知道如何将 ShareDB 与 GQL 订阅集成,或者我必须摆脱我的 GQL 突变和订阅?如果您给我一个示例项目的链接,那就太好了。谢谢。

0 投票
0 回答
33 浏览

node.js - 有没有办法将 ShareDB 与 AWS API Gateway WebSocket 一起使用?

我正在开发一个协作式文本编辑器,出色的ShareDB库是我能找到的最佳选择,使用起来非常简单且易于访问!

但现在我正在弄清楚在哪里以及如何托管可扩展的后端处理 ShareDB。

一开始,我在考虑AWS Elastic Beanstalk,但是让 WebSockets 在上面工作时遇到了一些麻烦。然后我发现AWS API Gateway Websocket,它似乎对我正在寻找的东西非常通用和有用。

我想知道你们中的一些人是否曾经尝试过让这两种有趣的技术一起工作?

非常感谢你的回答 :)

0 投票
1 回答
88 浏览

javascript - 使用 sharedb 和 json0-ot-type 向 JSON-Object 添加键(路径)

我目前正在使用 sharedb ( https://share.github.io/sharedb/ ) 和操作转换类型 json0 ( https://github.com/ottypes/json0 )。之后我需要向 JSON 对象添加一个键(路径),它应该通过 sharedb 共享。

例如,应将键“key2”添加到以下 JSON 对象:

不幸的是,根据json0的文档(https://github.com/ottypes/json0),并没有对此进行操作,这让我很惊讶。如何添加将由 sharedb 识别的新密钥?只需在本地添加密钥(路径),sharedb 就无法识别它!

0 投票
0 回答
19 浏览

reactjs - 未捕获的类型错误:无法读取未定义的属性“CollaborativeTextEditor”

我正在进行协作编辑并将 html-text-collab-ext 用于 html textareas。下面是updateContent.tsx文件

我收到错误为Uncaught TypeError: Cannot read property 'CollaborativeTextEditor' of undefined

0 投票
0 回答
33 浏览

javascript - ShareDB - 在中间件中运行数据库查询

目前我正在处理以下情况:

我有一个 ShareDB 后端启动并运行,以实现实时协作(文本编写)。

每次用户连接时,我都想检查用户打算处理的文档是否存在于数据库中。如果它不存在,请先创建它。如果它确实存在,请正常进行,这应该在“连接”中间件中完成:

但它触发了一个无限循环,因为我在连接中间件中触发了一个连接动作。

所以我不知道如何访问中间件中的数据库......知道吗?

谢谢!