我正在使用外观板V1.3.1。现在我正在使用thingboard上的自定义控件小部件。我在thingsboard设备属性中收到了值。我希望动态开启和关闭按钮传递1和0值。但我的问题是如何在自定义仪表板上自定义创建的开/关切换控件小部件上显示此最新值。
任何帮助都会得到赞赏。
先谢谢,
Viswa
答案 0 :(得分:0)
您可以通过首先在此处配置来设置要传递到小部件中的参数!
attributeService = $scope.$injector.get('attributeService');
函数中的 self.onIni
中,这将获取您刚刚在小部件数据源上设置的属性。
此后,您必须在小部件中恢复此信息。我建议您将其添加到self.onDataUpdated
函数中(Thingsboard使用AngularJS),以便按钮将使用该值进行更新。
self.onDataUpdated = function () {
for (let i=0;i<subscription.data.length;i++) {
let attributeValue = subscription.data[i].data[0][1];
let dataKey = subscription.data[i].dataKey.name;
if (dataKey === 'active') {
$scope.activeVal = (attributeValue === 'true');
}
}
};
这里经常通过每个属性,检查名称是否与'active'相匹配,如果是,则$ scope属性activeVal =您传递给窗口小部件的活动值。
谢谢。