FlowFuse / FlowFuse/node-red-dashboard

Property `class` not being updated when changing tabs

Open
#871 7 comments 0 reactions 0 assignees View on GitHub
needs-triage type:bug
Dominant language
HTML
Stars
355
Forks
82
Avg merge
4d 23h
Merged PRs (30d)
24

Description

### Current Behavior

Hello

This can be a unique situation due to the way i have things implemented in Node-Red.

I have a dashboard with several tabs (up to 6 tabs, 42 groups, and a total of 332 widgets). Since i have devices communicating at a rate of 100ms (up to 3 devices at the same time) i have filters before any widget to only send stuff to the widgets if the value `payload` for that specific widget has changed. This was implemented because i started to see performance degradation of too much traffic in the websocket.

What is happening, that i find strange is that for example:

- I am in tab '1', and a message is received from the device that requires updating a text label in tab `2`
- Node-Red sends the message for the text label correct (I can see the message was sent in the _debug page)
![image](https://github.com/FlowFuse/node-red-dashboard/assets/17281826/ea470a06-4b8a-4e66-af34-61484cb925fe)
- The tab properties still indicate the old `class` value
![image](https://github.com/FlowFuse/node-red-dashboard/assets/17281826/c04bad14-3fc5-4424-b77f-018e7857385a)
- If I change to tab `2` the `text` content is correctly updated, but the class is still the old one (in this case the color of the text is still `orange`), the `tab properties` maintains the same indication as before.

If I force a `refresh` of the page, the correct text and color is presented.

Is this behaviour expected?

At the moment the only workaround seems to have a ui-config (that seems to have also some issues) to detect when the tab is loaded, and issue a `msg.reset = true` to all filter nodes, to force the update of values.

### Expected Behavior

In the same way that the `text` content is updated so the other dynamic properties should be.

### Steps To Reproduce

_No response_

### Environment

- Dashboard version: v1.7.1
- Node-RED version: v3.1.7
- Node.js version:
- npm version:
- Platform/OS:
- Browser: Edge

### Have you provided an initial effort estimate for this issue?

I have provided an initial effort estimate

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.