mickbrisgau hat geschrieben: ↑22.05.2019, 14:46
Ich habe es mit const getestet. Das funktioniert dann nicht. Die Werte ändern sich nicht! Erst nach dem Neustart von RedMatic.
Ich bin 100% und ohne jeden Zweifel sicher dass da dann was anderes nicht gestimmt hat. Const hat (wie let) Block Scope. Der Block ist in dem Fall der Function Node selbst. Sobald das Script im Function Node endet oder auf ein return Statement stößt ist der Lebenszyklus der Const Deklaration vorbei. Hier ein einfacher Testflow um es zu verdeutlichen, Wenn Du da den Inject Node anklickst siehst wie die mit const deklarierte Variable "test" bei jedem Klick einen neuen Wert annimmt:
Code: Alles auswählen
[{"id":"14c8cb21.d65275","type":"inject","z":"4d8a8ce0.8c4334","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":280,"y":240,"wires":[["81884fb2.12c18"]]},{"id":"81884fb2.12c18","type":"function","z":"4d8a8ce0.8c4334","name":"","func":"const test = msg.payload\nreturn {payload: test};","outputs":1,"noerr":0,"x":460,"y":240,"wires":[["52e9e987.153ee8"]]},{"id":"52e9e987.153ee8","type":"debug","z":"4d8a8ce0.8c4334","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","x":640,"y":240,"wires":[]}]