SetInterval and SetTimeout usage with Forge UI

Hi everyone!

Is it possible to use the setInterval() and setTimeout() functions with Forge UI?
If yes, could you describe how?

Thanks in advance for your help,
Gyöngyi

1 Like

Hi @GyngyiKiss,

setInterval() and setTimeout() should largely work how they do in Node with the notable exception that our runtime will not wait for all timers / callbacks to complete before halting execution. If all sync and async code from your function handler finishes executing before the timeout is triggered then the runtime will clean up and the timer callback will never be executed.

5 Likes

setTimeout() and setInterval() functions allow you to execute a piece of JavaScript code/function at a certain point in the future. setInterval repeats the call, setTimeout only runs it once.

setTimeout(expression, timeout); runs the code/function once after the timeout. It is a time based code execution method that will execute script only one time when the interval is reached, and not repeat again unless you gear it to loop the script by nesting the setTimeout object inside of the function it calls to run. If geared to loop, it will keep firing at the interval unless you call clearTimeout(). If you want something to happen one time after some seconds Then use setTimeout… because it only executes one time when the interval is reached.

setTimeout(function() {
  console.log('Wait 3 seconds and I appear just once');
}, 3000);

setInterval(expression, timeout); runs the code/function repeatedly, with the length of the timeout between each repeat. It is a time interval based code execution method that has the native ability to repeatedly run specified script when the interval is reached. It should not be nested into its callback function by the script author to make it loop, since it loops by default. It will keep firing at the interval unless you call clearInterval(). If you want to loop code for animations or clocks Then use setInterval.

setInterval(function() {
  console.log('Every 3 seconds I appear on your console');
}, 3000)

Hi @SamSmyth

we are using setInterval function in our code for polling and that piece of code resides in src/index.js
can you help us in debugging the issue or any reason why setInterval is not working?

Did you find the way?