腾讯问卷文本编辑模式重构与改进
摘要
腾讯问卷有两种创建问卷的模式,分别是高级编辑与文本编辑。
高级编辑提供方便的UI界面,用户通过拖拽形式即可完成问卷创建。
而文本编辑则是通过纯文本来生成问卷,适合需要大量创建题目的用户。
当前文本编辑模式的解析器基于正则表达式实现,代码逻辑十分分散且复杂,使得想添加新语法会变得非常困难。
而且并没有实现文本与问题ID的绑定,每次对文本内容修改时,会重新解析并实时生成新的问题ID。
问题ID的变化会使之前设置的DSL(根据ID来处理逻辑)全部失效,同时还会导致以往关联的答案数据因为ID的丢失,而变得无效。