ThingsBoard CE多变量多边形颜色动态切换功能实现咨询
ThingsBoard CE 多变量动态控制多边形颜色实现方案
核心逻辑
每个叠加在矩形开关上的多边形组件,单独绑定对应遥测变量,通过自定义函数判断变量值(0/1),返回对应颜色(红/绿)。
具体操作步骤
添加多边形组件
进入仪表板编辑模式,给每个矩形开关叠加一个多边形组件,调整尺寸和位置使其完全覆盖对应开关。绑定对应遥测变量
选中目标多边形,在右侧配置面板的「数据」标签页,选择Arduino Uno对应的设备数据源,绑定匹配的变量(比如第一个多边形绑定state1,第二个绑定state2,以此类推)。配置动态颜色函数
切换到「样式」标签页,找到填充色(或边框色)配置项,选择「自定义函数」,使用以下代码(替换对应变量名即可):// 以state2为例,其他变量只需替换state2为对应变量名 var stateVal = dsData[dsIndex]['state2']; return stateVal === 1 ? "green" : "red";逻辑说明:变量值为1时返回绿色,0时返回红色,用三元表达式简化原判断逻辑,同时用严格相等
===避免类型匹配问题。验证效果
发送示例遥测数据(state1:1、state2:0、state3:1、state4:1、state5:1),检查每个多边形颜色:state2对应红色,其余为绿色,符合预期即配置完成。
内容的提问来源于stack exchange,提问作者Ande Mandoyi
相关产品推荐
相关产品推荐

