segmentfault的实时markdown编辑修改位置定位是怎么做到的,而且效率还不低

Viewed 3294

segmentfault的实时markdown编辑修改位置定位是怎么做到的,而且效率还不低

2 Answers

我们使用了 slim-diff.js 来比对修改前后的内容变化,然后高亮变化的部分。

好像这个库会把两段文字所有的不同都会找出来吧?但其实只需要找到第一个不同的位置不就行了吗

是的,这才是这个库的主要功能,编辑器只是用到了一部分

修改位置定位

什么意思?

把markdown编译成html,就可以了。

你修改markdown后 预览实时定位你修改的位置

没有定位。是全部都重新编译了,而不是改哪里编译哪里。
改markdown哪里就改html哪里是不行的。只有改html,修改html这是可以的。