document makeFetcher a bit

このコミットが含まれているのは:
Shpuld Shpuldson 2020-09-02 21:08:06 +03:00
コミット d939f2ffbc
1個のファイルの変更8行の追加2行の削除

ファイルの表示

@ -1,11 +1,17 @@
export const makeFetcher = (call, interval) => {
// makeFetcher - replacement for setInterval for fetching, starts counting
// the interval only after a request is done instead of immediately.
// promiseCall is a function that returns a promise, it's called when created
// and after every interval.
// interval is the interval delay in ms.
export const makeFetcher = (promiseCall, interval) => {
let stopped = false
let timeout = null
let func = () => {}
func = () => {
call().finally(() => {
promiseCall().finally(() => {
if (stopped) return
timeout = window.setTimeout(func, interval)
})