覆盖主要内容
版本: 6.1.0

开关

开关是高级交互组件的一种,可以用来仿照物理开关,让用户打开或关闭某个项目,并通过交互配置,定义开关打开或关闭状态下需要显示或隐藏的内容。本文介绍开关各配置项的含义

配置

基础属性:包含组件的基础属性。

参数说明
图表宽度组件的宽度
图表高度组件的高度
横坐标组件的横坐标,单位为px。横坐标为组件左上角距离页面左边界的像素距离
纵坐标组件的纵坐标,单位为px。横坐标为组件左上角距离页面上边界的像素距离
旋转角度以组件的中心为中心点,进行旋转,单位为度(°)
透明度取值范围为0~1。为0时,图表隐藏;为1时,图表全部显示。默认为1

全局样式

  • 默认选中状态:打开开关,开关默认显示为选中状态;关闭开关,开关默认显示为关闭状态。

背景样式

  • 边框样式
参数说明
边框宽度边框的宽度。
边框颜色边框的颜色。
边框圆角边框的圆角,取值范围为0~360。数值为0的时候边框为方形,数值为360时边框为圆形。
线条类型边框的线条类型。包括实线虚线点线双实线雕刻效果浮雕效果陷入效果突出效果
  • 背景颜色
参数说明
打开颜色开关打开时的背景颜色。
关闭颜色开关关闭时的背景颜色。

按钮样式

  • 边框样式
参数说明
边框宽度开关按钮边框的宽度。
边框颜色开关按钮边框的颜色。
边框圆角开关按钮边框的圆角,取值范围为0~360。数值为0的时候按钮边框为方形,数值为360时按钮边框为圆形。
线条类型开关按钮边框的线条类型。包括实线虚线点线双实线雕刻效果浮雕效果陷入效果突出效果
  • 背景颜色:开关按钮的背景颜色。

数据

上图中的示例数据如下。

[
{
"onValue": 1,
"offValue": 0,
"state": 0
}
]

表 1. 字段说明

字段说明
onvalue打开开关抛出数据值,默认数值为1。
offvalue关闭开关抛出数据值,默认数值为0。
state开关的打开或关闭状态,只支持0或1,0表示关闭状态,1表示打开状态。

表 2. 配置项说明

配置项说明
受控模式打开开关,组件初始化状态下不请求数据,仅通过回调ID或蓝图编辑器配置的方法发起请求数据;关闭开关,可以使用自动更新请求数据。
自动更新请求选中后可以设置动态轮询,还可以手动输入轮询的时间频次。清除后则不会自动更新,需要手动刷新页面,或通过蓝图编辑器和回调ID事件来触发请求更新数据。
数据源可以选择数据源,如下图。
数据响应结果展示数据请求的响应结果。当数据源发生改变时,可单击右侧的查看响应数据,实时查看数据响应结果。

交互

选中当状态变化时右侧的启用,开启组件交互功能。开关组件拥有交互配置,但不能自定义其他回调变量,只可打开或关闭开关,触发数据请求,抛出一个回调值,然后在其他组件中配置使用。 默认抛出数据面板中配置的value值,打开开关时会抛出onvalue值,关闭开关时会抛出offvalue值,具体配置请参见回调ID实现图表联动功能

蓝图编辑器交互配置

  1. 在画布编辑器页面,右键单击组件,选择导出到蓝图编辑器
  2. 单击页面左上角的 图标。
  3. 在蓝图编辑器配置页面,单击导入节点栏内的开关组件,在画布中可以看到如下图所示的开关的蓝图编辑器配置参数。

  • 事件
事件说明
当数据接口请求完成时数据接口请求返回并经过过滤器处理后抛出的事件,同时抛出处理后的JSON格式的数据。具体数据请参见上文的数据系列
当状态变化时当状态发生变化时抛出的事件,同时抛出该状态下对应的数据项。
  • 动作
动作
说明
请求数据接口重新请求服务端数据,上游数据处理节点或图层节点抛出的数据将作为参数。例如开关配置了API数据源为[http://api.test](http://api.test),传到请求开关接口动作的数据为{ id: '1'},则最终请求接口为[http://api.test?id=1](http://api.test?id=1)
导入数据接口按组件绘制格式处理数据后,导入组件,重新绘制。不需要重新请求服务端数据。具体数据请参见上文的数据系列
获取当前开关状态获取当前的开或关的状态。
设置当前开关状态设置当前的开或关的状态。
清空组件到默认值表示还原到默认值。
更新组件配置动态更新组件的样式配置。需要先在组件的配置面板中,单击复制配置到剪贴板,获取组件配置数据。再根据需要在蓝图编辑器配置页面的数据处理节点中更改对应样式的字段值。
显示显示组件,不需要参数。
隐藏隐藏组件,不需要参数。
切换显隐状态切换组件显示或者隐藏。
移动将组件移动到指定位置。{// 移动方式。绝对定位:to,相对定位:by。默认值:to。"positionType": "to",// 指定位置。x坐标,y坐标。"attr": {"x": 0,"y": 0},// 动画方式。"animation": {"enable": false,// 动画延时。"animationDuration": 1000,// 动画曲线。可选值为:linear|easeInOutQuad|easeInOutExpo。"animationEasing": "linear"}}