2023年政策修订增补工作正在进行中,欢迎参与!
  • Moegirl.ICU:萌娘百科流亡社群 581077156(QQ),欢迎对萌娘百科运营感到失望的编辑者加入
  • Moegirl.ICU:账号认领正在试运行,有意者请参照账号认领流程

User:妹空酱/Wikiplus/快速编辑技术细节

萌娘百科,万物皆可萌的百科全书!转载请标注来源页面的网页链接,并声明引自萌娘百科。内容不可商用。
跳转到导航 跳转到搜索

此处记载一些wikiplus中快速编辑的技术细节。

流程

快速编辑技术实际上是直接通过API获取页面内容,取代了打开编辑页面的功能。

读取一个一般的页面只需要200ms左右的时间,比打开编辑界面在大部分情况下要快。

在读取到页面内容后即将原条目内容替换为快速编辑的编辑窗。

预览功能是通过API:Parsing wikitext来实现的,实际上的速度与在编辑页面预览持平或略快。

提交编辑功能通过API:Edit实现。

实际上所有的需要与服务器通信的操作都是通过API来完成的,数据通信量会比较小,因为返回的内容都是简短的json

预读取

预读取技术实际上是预判用户操作,提前读取相关内容存储起来,当命中用户操作时,直接调用存储而不需要再向服务器查询内容。

当前的预读取逻辑大致是这样的:

  1. 当页面加载时,预读取全页、前两个段落。
  2. 当鼠标悬于各段落后的[快速编辑]按钮时,预读取当前段落。
  3. 当鼠标扫过各段落标题所在水平线时,预读取下一个段落。
  4. 当鼠标悬于目录的某一段落名上时,预读取此段落。

所有预读取操作不会被重复执行。也就是说第一条读取了段落1的内容,即使触发第二条的条件,也不会读取段落1