Node.js: получите время до следующей работы cron - PullRequest
0 голосов
/ 24 марта 2020

У меня есть сервер, на котором задание cron выполняется в определенное время дня. Я хочу получить время до следующей работы. Я посмотрел на пакеты cron и node-cron в npm, но, похоже, они не обладают этой функциональностью.

Как я могу самостоятельно реализовать эту функцию для этих пакетов?

1 Ответ

1 голос
/ 24 марта 2020

Пакет cron позволяет вам получать следующие запуски задания cron, поэтому вы можете использовать его для определения времени до следующего запуска.

Это отображается в CronJob Функция .nextDates ().

const CronJob = require("cron").CronJob;

const cronJob = new CronJob(
    "*/30 * * * * *",
    () => {
        console.log("Timestamp: ", new Date());
    },
    null,
    true,
    "UTC"
);

setInterval(() => { 
    let timeUntilNextRunSeconds = cronJob.nextDates(1)[0].unix() - new Date().getTime()/1000;
    console.log("Time until next run (s): ", Math.round(timeUntilNextRunSeconds));
}, 1000);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...