如何更新 Thingsboard 仪表板状态而无需单击一行

问题描述 投票:0回答:1

在我的 thingsboard 仪表板上,当我单击仪表板上实体表小部件的一行时,卡片和时间序列小部件仅显示一个值,从而填充仪表板状态,我希望能够使用以下命令自动更新仪表板状态:单击任何行之前的实体值作为默认值,这将依次显示在仪表板上的我的时间序列和卡片小部件上。

我尝试使用 self.ctx.stateController.updateState('default', currentStateParams, false)。我真的不知道要为这个方法传入什么 currentStateParams ,如果它真的会更新状态,我是否还要将它添加到实体表小部件的 onInit 函数中?

state dashboard thingsboard
1个回答
0
投票

您可以调用widgetContext.updateAliases()

举这个例子,

function ($event, widgetContext, entityId, entityName, htmlTemplate, additionalParams, entityLabel) { 
let $injector = widgetContext.$scope.$injector;
let assetService = $injector.get(widgetContext.servicesMap.get('assetService'));


function save() {
    let asset = {
        name: 'name',
        type: 'type',
        label: 'label'
    };
    assetService.saveAsset(asset).subscribe(
        function (asset) {
            saveAttributes(asset.id).subscribe(
                function () {
                    widgetContext.updateAliases();
                }
            );
        }
    );
}
    
function saveAttributes(entityId) {}

}

上下文:我在小部件自定义操作中调用 updateAliases 函数,

© www.soinside.com 2019 - 2024. All rights reserved.