Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

node-red-node-ui-table dashboard rendering error other controls dont render #74

Open
StoneColdRepins opened this issue Aug 6, 2021 · 14 comments

Comments

@StoneColdRepins
Copy link

Which node are you reporting an issue on?

node-red-node-ui-table

What are the steps to reproduce?

flows.json.txt
package.json.txt

What happens?

when the ui-table is added to the dashboard, all the other dashboard controls don't show

image

What do you expect to happen?

all the other dashboard controls should show

Please tell us about your environment:

  • [ 2.0.5] Node-RED version:
  • [ 14.017.4] node.js version:
  • [6.14.14 ] npm version:
  • [ Windows_NT 10.0.19043 x64 LE] Platform/OS:
  • [ Chrome/Edge/Firefox] Browser: occurs on all browsers tested

image

image

@StoneColdRepins
Copy link
Author

I removed all my other code so only the minimalist flows also does the same

@AutoTwisty
Copy link

Having the same issue, removing node-red-node-ui-table from my palette restores functionality, so I know its the cause. I have not idea on how to make it work or why its happening though.

@Steve-Mcl
Copy link

@AutoTwisty

Can you please post a 2 sample flows. 1 where it works, 1 where it doesnt.

Also, when it does not work, could you look in the browsers console (devtools) and let us know what errors (if any) there are?

Thank you.

@AutoTwisty
Copy link

@Steve-Mcl
Hi Steve, I´ve already removed the node from my palette in favor of another solution and don´t want to risk crashing my dashboard again today. But the flow using the table node was very simple: A inject node pushing a global array into the table node. The flow that worked was every flow without the table, the ones that didnt was the ones with the table. Strange thing was that the node would at first not appear, and the rest of the dashboard would appear normal, but after pushing data to the table node it would be the only thing shown, and the rest of the dashboard would be empty, no tabs or outer groups would show.
After removing the table node from the flow and re-deploying, the dashboard would show as completely empty, prompting the user to add dashboard nodes to their flow.

Don´t know if that does you any good, but if i do reintroduce the table node to my flow I´ll save it and post here along with the error logs as requested.
Thanks!

@AutoTwisty
Copy link

AutoTwisty commented Jun 9, 2022

It´s a new day, and I´m at it again. I have another template based solution for my table needs, but would very much like the sorting functions and look of the ui-table node, so here we go again.

The flow i´ve included below is a simple test space, but works just as well as in the rest of the project when I use my template node, when swapping that with the table node however, nothing happens.
I have no versions of his flow where the node works.

Browser (Chrome) console is logging one warning:
"DevTools failed to load source map: Could not load content for http://127.0.0.1:1880/vendor/purify.min.js.map: HTTP error: status code 404, net::ERR_HTTP_RESPONSE_CODE_FAILURE"
Not sure if this is related to the table issues or if it´s something to do with the other dashboard elements I´m using.

EDIT: Got the table node to work, same flow as before, just restarted Node-Red (not just the flow, the entire program) but now the old issue returned, all other dashboard elements are missing, Seems I can have the table node or the rest of the dashboard, but not both at the same time.

table_test_flow.txt

@StoneColdRepins
Copy link
Author

StoneColdRepins commented Jun 9, 2022

Hi

I spent alot of time on this what I noticed it occurs on windows installations and occurs when the --userDir is set

call pm2 start C:\Users\Alain\AppData\Roaming\npm\node_modules\node-red\red.js --name node-red-1880 --node-args="--max-old-space-size=128" -- -v --port 1880 --title node-red-1880 --userDir c:\node-red\1880 --settings c:\node-red\1880\settings_1880.js flows_1880.json

If we remove the --userDir so the node modules load from the standard installation every thing works well

The idea of using different --userDir paths is to have multiple instances running with their own node modules in essence creating a sandbox per instance and different versions of the same node module can be tested on the same machine

this caused the following

image

i believe the problem is with the web socket

websocket.js:54 WebSocket connection to 'ws://127.0.0.1:1880/ui/socket.io/?EIO=4&transport=websocket&sid=2mAXxihdAXJLtPBFAAAA' failed:

@StoneColdRepins

This comment was marked as outdated.

@StoneColdRepins
Copy link
Author

pm2 monit does not show anything

image

@AutoTwisty
Copy link

@StoneColdRepins
Thank you for the reply. I don´t think I follow, do you mean that I should remove "--userDirr" from somewhere in the red.js file? In that case, where? userDirr is mentioned many times and I suspect removing all mention of it would break something. I also don´t understand what you mean about the websocket being a cause, the link or adress you copied in at the end of your first post does not tell me anything.

The exported flow you posted is giving me errors when I attempt to import it, and I´m not sure what it is? Did you mean to post an example of something?
Sorry for not understanding!

@StoneColdRepins
Copy link
Author

Hi the flow is loaded from the import
image

@StoneColdRepins
Copy link
Author

This call i make from a command prompt using pm2 as a manger

call pm2 start C:\Users\Alain\AppData\Roaming\npm\node_modules\node-red\red.js --name node-red-1880 --node-args="--max-old-space-size=128" -- -v --port 1880 --title node-red-1880 --userDir c:\node-red\1880 --settings c:\node-red\1880\settings_1880.js flows_1880.json

if i execute without the --userDir parameter the tabulator renders

call pm2 start C:\Users\Alain\AppData\Roaming\npm\node_modules\node-red\red.js --name node-red-1880 --node-args="--max-old-space-size=128" -- -v --port 1880 --title node-red-1880 --settings c:\node-red\1880\settings_1880.js flows_1880.json

the only difference from a google debugger is there is no WebSocket error and as such my assumption is made

@StoneColdRepins
Copy link
Author

@AutoTwisty how are you starting node red

@Steve-Mcl do you have any insight

@AutoTwisty
Copy link

AutoTwisty commented Jun 9, 2022

I see, I opened the example flow that you showed and have the same issue with that. To clearify, I don´t have any issues with the table not rendering, but as soon as I have a table in any flow, all other non-table ui elements stop rendering.
I start Node-Red by command in the Command Prompt.

@StoneColdRepins
Copy link
Author

kewl, it would be great if this could be resolved

for you possibly reload nodejs and node-red as you are running from the default installation folder

it may also be an idea to use pm2 as its monit command make watching the logs simplified and seeing memory utilization and processor resources

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants