какой тип тайм-аута должен быть определен в машинописи - PullRequest
0 голосов
/ 01 марта 2019

Я пытаюсь написать функцию debounce в машинописном тексте, но не уверен, какой тип установить для переменной, назначенной setTimeout.Мой код выглядит так:

function debounced(func: () => void, wait: number) {
    // what type should timeout be here?
    let timeout: any;
    return () => {
        if (timeout) {
            clearTimeout(timeout);
        }
        timeout = setTimeout(() => {
            func();
        }, wait);
    };
}

1 Ответ

0 голосов
/ 01 марта 2019

Если вы хотите, чтобы ваш код был переносимым между node.js и средой браузера, вы можете использовать тип возврата setTimeout, например, так:

let timeout: ReturnType<typeof setTimeout>;

, поскольку он объявлен для возврата различных типов в узлеи браузер.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...