文档简介:
Sugar BI中支持 10+种过滤组件,有些过滤组件是支持绑定数据的,例如单选,就可以给它绑定单选项的数据。下面分别列举每种过滤组件在使用 API 方式绑定自身数据时,所对应的数据 API 返回的 JSON 格式要求:
单选列表、下拉单选
示例 API:/openapi/demo/condition?type=select
如果开启了基础选项卡中的搜索时重新拉取数据,那么会传递一个 searchStr 参数。
POST 给 API 的参数:
{ "searchStr": 用户当前搜索的字符串; }
response:
{ "status": 0, // 0表示成功,非0表示失败 "msg": "", // 失败时的提示信息 "data": [ { "label": "name1",
// 展示使用的字段 "value": "value1" // 具体的取值 }, { "label": "name1", // 展示使用的字段
"value": "value1" // 具体的取值 }, ... ] }
多选列表、下拉多选
和上面单选列表的 API 数据格式要求完全一致。
树形选择
示例 API:/openapi/demo/condition?type=tree
response:
{ "status": 0, // 0表示成功,非0表示失败 "msg": "", // 失败时的提示信息 "data": [
{ "name": "name1", // 展示的节点名称 "value": "value1" // 具体的取值 "children": [
{ "name": "name1-1", "value": "value1-1", "children": [...] }, { "name": "name1-2", "value": "value1-2", } ] },
{ "name": "name2", // 展示使用的字段 "value": "value2" // 具体的取值 }, ... ] }
日期时间
日期、时间、日期范围等过滤组件开启动态基准日期后,API 拉取的数据要求
response:
{ "status": 0, // 0表示成功,非0表示失败 "msg": "", // 失败时的提示信息 "data":
{ "dateRange":["2020-01-01","2021-12-12"] } }
输入框
输入框本身不需要绑定数据,但是输入框支持 suggestion(即输入时的联想提示词),这个提示词是动态的,可以通过 API 的方式来绑定 suggestion 的数据。
示例 API:/openapi/demo/condition?type=suggestion
POST 给 API 的参数:
{ "searchStr": 用户当前输入的字符串; }
response:
{ "status": 0, // 0表示成功,非0表示失败 "msg": "", // 失败时的提示信息 "data":
[ // 输入了search内容后返回的提示信息列表 "数据1", "数据", ... ] }
多重逻辑
多重逻辑也可以绑定数据,它可以绑定两种数据:
一种是直接让用户选择的数据(单选、多选之类),这种和上面单选列表的 API 数据格式要求完全一致。
另外一种是和输入框的 suggestion 一样,详见上面的输入框的 suggestion 数据绑定。