2023年政策修订增补工作正在进行中,欢迎参与!
User:妹空酱/Wikiplus/快速编辑技术细节
跳转到导航
跳转到搜索
此处记载一些wikiplus中快速编辑的技术细节。
流程
快速编辑技术实际上是直接通过API获取页面内容,取代了打开编辑页面的功能。
读取一个一般的页面只需要200ms左右的时间,比打开编辑界面在大部分情况下要快。
在读取到页面内容后即将原条目内容替换为快速编辑的编辑窗。
预览功能是通过API:Parsing wikitext来实现的,实际上的速度与在编辑页面预览持平或略快。
提交编辑功能通过API:Edit实现。
实际上所有的需要与服务器通信的操作都是通过API来完成的,数据通信量会比较小,因为返回的内容都是简短的json
预读取
预读取技术实际上是预判用户操作,提前读取相关内容存储起来,当命中用户操作时,直接调用存储而不需要再向服务器查询内容。
当前的预读取逻辑大致是这样的:
- 当页面加载时,预读取全页、前两个段落。
- 当鼠标悬于各段落后的[快速编辑]按钮时,预读取当前段落。
- 当鼠标扫过各段落标题所在水平线时,预读取下一个段落。
- 当鼠标悬于目录的某一段落名上时,预读取此段落。
所有预读取操作不会被重复执行。也就是说第一条读取了段落1的内容,即使触发第二条的条件,也不会读取段落1