写点什么

低代码实践:题型物料化设计(二)

作者:XIAOJUSURVEY
  • 2024-08-02
    浙江
  • 本文字数:709 字

    阅读完需:约 2 分钟

低代码实践:题型物料化设计(二)

文内项目 Github:XIAOJUSURVEY

实现

一个题目结构的组成如下,不同场景能力基于容器实现,不同题型差异一般在于答题区域,通过答题控件实现:

容器

提供两个内置容器:

1、QuestionContainer:搭建端、渲染端使用。

2、QuestionRuleContainer:渲染端使用。

标题控件

QuestionContainer 内置统一的标题控件。

答题控件

QuestionContainer 内置加载器动态加载不同题型的答题控件。

动态加载流程

加载器解析 schema 数据并且加载对应答题控件: 


物料分层化

基于不同题型的答题控件差异诉求,采取物理分层化设计方式:

1、分类型抽离通用逻辑沉淀为基础物料,以降低具体业务逻辑对这些基础物料的依赖。

2、不同题型物料基于相应类型的基础物料进行扩展,实现特定业务逻辑以做到题型隔离。

根据题型开放题型/封闭题型/评分题型,分为以下三大类通用基础组件,不同题目的答题控件可选择相应类型的基础组件进行继承、组合和扩展:

输入类题型

输入类题型基础组件,所有输入类特性的题可以基于此基础组件扩展,如:单行输入框、多行输入框

选择类题型

选择类题型基础组件,所有选择类特性的题可以基于此基础组件扩展,如:单选题、判断题、多选题、投票题

评分类题型

评分类题基础组件,所有评分类题型可以基于此类组件扩展,如:评分题、nps 评分题

以下为题型扩展关系:


物料配置化

各个题型差异通过题型物料描述协议可自定义相关配置:

功能一览表

暂支持 7 个题型,12 类可配置项,也可自定义题型


关于我们

感谢看到最后,我们是一个多元、包容的社区,我们已有非常多的小伙伴在共建,欢迎你的加入。

Github:XIAOJUSURVEY


社区交流群

Star

开源不易,请star一下 ❤️❤️❤️,你的支持是我们最大的动力。


发布于: 刚刚阅读数: 4
用户头像

XIAOJUSURVEY

关注

@滴滴 github.com/didi/xiaoju-survey 2024-05-20 加入

「快速」打造「专属」问卷系统, 让调研「更轻松」

评论

发布
暂无评论
低代码实践:题型物料化设计(二)_开源_XIAOJUSURVEY_InfoQ写作社区