Var*_*roi 10 operational-transform meteor
我正在开发一个与Etherpad有关的项目,我想到了使用Meteor.js(我认为它非常适合这种项目).如果我想让它可扩展,那么操作转换对我的项目非常重要.我目前的知识表明流星不支持开箱即用的操作转换(如果我错了,请纠正我).所以基本上我的问题是如何在meteor.js中实现操作转换?
我尝试使用Neil Fraser的这个库google-diff-match-patch,但在应用补丁时遇到了问题(虽然它很容易在meteor.js之外工作).
那有什么建议吗?
浏览器内协作文本编辑器有两个主要组件:文本区域本身,它必须能够很好地协调用户的键入与从服务器接收的其他编辑;以及用于发送、接收和组合这些编辑的数据模型。
今天的 Meteor 并没有为这些事情提供特殊的帮助,但它确实提供了实时数据传输,以及一种在客户端和服务器之间自动移动数据的方法。
如果我要在 Meteor 上实现 EtherPad,我一直想象我会使用一个集合作为“操作日志”。用户更改将被发送到服务器,在那里它们将被附加到官方操作日志(基本上是差异)中,该日志将自动流式传输到所有客户端。客户端将负责应用传入的差异并将它们与服务器尚未确认的类型进行协调。
这是一个艰巨的实施挑战。祝你好运!
| 归档时间: |
|
| 查看次数: |
1360 次 |
| 最近记录: |