Фильтрация данных телеметрии на панели управления из ввода, введенного в текстовое поле настраиваемого виджета - Thingsboard

Я создал собственный виджет с открытым текстовым полем и кнопкой поиска на платформе с открытым исходным кодом Thingsboard IoT. При нажатии кнопки я хочу отфильтровать строки телеметрии, перечисленные в виджете термометров. например В прикрепленном изображении, если я ввожу «Термометр-1А» в текстовое поле, выделенное красным, то при нажатии кнопки поиска имя объекта, выделенное синим цветом, должно быть отфильтровано входным значением в виджете «Термометры».

Любая помощь будет принята с благодарностью. Пользовательский виджет Thingboard Dashboard


person Pravin316    schedule 17.10.2018    source источник


Ответы (1)


Взаимодействие возможно только между настраиваемыми виджетами. Наши стандартные виджеты не предоставляют API для связи.

  1. Если вы хотите фильтровать данные только в виджете таблицы, самый простой способ - использовать кнопку «поиск» в правом верхнем углу виджета таблицы.

  2. Если первый вариант не работает для вас, вам следует реализовать собственный виджет таблицы и добавить API для взаимодействия. Например, виджет поиска будет транслировать какое-то событие при нажатии кнопки. А виджет настраиваемой таблицы будет прослушивать сообщения определенного типа и действовать соответствующим образом.

Вот ссылка, которая описывает работу обмена сообщениями внутри AngularJS https://toddmotto.com/all-about-angulars-emit-broadcast-on-publish-subscribing/

person Vitaliy Paromskiy    schedule 18.10.2018