# 常见问题
# 为什么要开发此工具?
其实先可以看下这个工具的使用 场景
# 为什么没有使用标准JSON Schema
?
json-schema (opens new window) 是用以标注和验证JSON文档的元数据的文档。但其本身对UI交互、自定义规则等方面表达力略繁琐且有限,需要扩展字段以满足实际需求。参考业内相似产品(部分工具通过标准json schema
+ 自定义schema字段来达到目的,最终可能需要两个schema),也结合实际开发成本、开发体验等方面,我们决定使用我们内部约定schema方式来表达
# 支持国际化么?
目前暂不支持国际化,后续有计划支持
# 可以表单内联动么?
支持表单内联动及表单外事件暴露。
# 表单内联动
主要分两部分:
- 值联动:一个表单
widget
值发生变化影响另一个或多个widget
属性发生变化的场景。常见单选框(radio
)选中某个值是另一个widet
发生显隐、禁用等(当然也可以影响其他属性)属性发生变化(目前仅支持显隐及是否禁用) - 事件联动:指一个
widget
触发内部事件时,影响其他一个或多个widget
属性发生变化的场景。常见按钮(button
)点击时,隐藏其他widget
# 表单外事件暴露
指Epage
实例以外可以监听到widget
内部事件的能力。主要满足复杂交互时,仅Epage
无法完全满足,如监听按钮的点击事件(发请求或执行某些业务方法等)
# Epage以外能否知道内部事件?
上面已经提到表单外事件暴露能力
# 可以定制主题么?
可以。Epage
的样式使用的 less (opens new window) 开发。我们针对iview组件库封装的widget渲染包支持直接引用less文件,可以直接引用css文件
// 设计器或渲染器源码
import 'epage/src/style/main.less';
import 'epage-iview/src/style/main.less';
1
2
3
2
3
← 使用场景