KeepLatest task
This is the way to create a keepLatest task.
This will run the initial tasks and then, if over the max
concurrency will keep the very last
instance in a que. You can also provide a max
that will dictate the number of task instances that
will run initially.
Usage
To specify a task as keepLatest, you can either use the dot notation or the options notation.
Max concurrency
This is how you can specify the maximum number of concurrent instances. The default is 1, here we’re setting it to 5.
The task store
The return value of the task function will be a svelte store where you can access state from all the
instances running and eventually cancel them with cancelAll
.
Passing props
While defining a task, if the function that you pass in has some arguments, those will be required
by the perform
function (and it will be strongly typed too).
Getting the return value
If you return something from your task you can access the return value by awaiting the perform
function.
Getting the TaskInstance
If you don’t await the perform
function, then you’ll get back the
task instance that you can use either to cancel it or to get its current
state. The TaskInstance
is also a svelte store and you can access the current value with
instance.get()
.