Geweldige gemeenschapsmodule

KnooppuntCron

npm npm Dekkingsstatus Code klimaat Bouwstatus Afhankelijkheidsstatus devDependency-status

De node-cron-module is een kleine taakplanner in puur JavaScript voor node.js, gebaseerd op GNU crontab . Met deze module kunt u taken plannen in node.js met behulp van de volledige crontab-syntaxis.

NPM

Aan de slag

Installeer node-cron met behulp van npm:

1
$ npm install --save node-cron

Importeer node-cron en plan een taak:

1 2 3 4 5
var cron = require('node-cron'); cron.schedule('* * * * *', function(){ console.log('running a task every minute'); });

Cron-syntaxis

Dit is een korte verwijzing naar de cron-syntaxis en toont ook de opties die worden ondersteund door node-cron.

Allowed fields

1 2 3 4 5 6 7 8 9
# ┌────────────── second (optional) # │ ┌──────────── minute # │ │ ┌────────── hour # │ │ │ ┌──────── day of month # │ │ │ │ ┌────── month # │ │ │ │ │ ┌──── day of week # │ │ │ │ │ │ # │ │ │ │ │ │ # * * * * * *

Allowed values

veld waarde
seconde 0-59
minuut 0-59
uur 0-23
dag van de maand 1-31
maand 1-12 (of namen)
dag van de week 0-7 (of namen, 0 of 7 zijn zondag)

Veelvoudige waarden gebruiken

U kunt meerdere waarden gebruiken, gescheiden door een komma:

1 2 3 4 5
var cron = require('node-cron'); cron.schedule('1,2,4,5 * * * *', function(){ console.log('running every minute 1, 2, 4 and 5'); });

Bereiken gebruiken

U kunt ook een reeks waarden definiëren:

1 2 3 4 5
var cron = require('node-cron'); cron.schedule('1-5 * * * *', function(){ console.log('running every minute to 1 from 5'); });

Stapwaarden gebruiken

Stapwaarden kunnen worden gebruikt in combinatie met bereiken, waarbij een bereik wordt gevolgd met '/' en een getal. Bijvoorbeeld: 1-10/2dat is hetzelfde als 2,4,6,8,10. Stappen zijn ook toegestaan ​​na een asterisk, dus als je 'elke twee minuten' wilt zeggen , gebruik gewoon */2.

1 2 3 4 5
var cron = require('node-cron'); cron.schedule('*/2 * * * *', function(){ console.log('running a task every two minutes'); });

Namen gebruiken

Voor de maand en de weekdag kunt u ook namen of korte namen gebruiken, bijvoorbeeld:

1 2 3 4 5
var cron = require('node-cron'); cron.schedule('* * * January,September Sunday', function(){ console.log('running on Sundays of January and September'); });

Of met korte namen:

1 2 3 4 5
var cron = require('node-cron'); cron.schedule('* * * Jan,Sep Sun', function(){ console.log('running on Sundays of January and September'); });

Cron-methoden

Schedule

Plannen dat een bepaalde taak wordt uitgevoerd wanneer de cron-expressie aanvinkt.

Argumenten:

  • !string-expressie - Cron-expressie
  • !Functie func - Uit te voeren taak
  • boolean?instantStart - Of de planner onmiddellijk na het maken moet worden gestart.

ScheduledTask-methoden

Start

Start de geplande taak.

1 2 3 4 5 6 7
var cron = require('node-cron'); var task = cron.schedule('* * * * *', function() { console.log('immediately started'); }, false); task.start();

Stop

De taak wordt pas uitgevoerd als deze opnieuw wordt gestart.

1 2 3 4 5 6 7
var cron = require('node-cron'); var task = cron.schedule('* * * * *', function() { console.log('will execute every minute until stopped'); }); task.stop();

Destroy

De taak wordt gestopt en volledig vernietigd.

1 2 3 4 5 6 7
var cron = require('node-cron'); var task = cron.schedule('* * * * *', function() { console.log('will not execute anymore, nor be able to restart'); }); task.destroy();

Validate

Valideer dat de gegeven string een geldige cron-expressie is.

1 2 3 4
var cron = require('node-cron'); var valid = cron.validate('59 * * * *'); var invalid = cron.validate('60 * * * *');

Problemen

U kunt hier problemen en verbeteringsverzoeken indienen .

Bijdragers

Over het algemeen volgen we de "fork-and-pull" Git-workflow.

  • Fork de repository op GitHub;
  • Wijzigingen doorvoeren in een filiaal in uw fork;
  • Pull request "upstream" met uw wijzigingen;

OPMERKING: Zorg ervoor dat u de nieuwste versie van "upstream" samenvoegt voordat u een pull-verzoek indient!

Draag alstublieft geen code bij die u niet zelf heeft geschreven, tenzij u er zeker van bent dat u daartoe wettelijk bevoegd bent. Zorg er ook voor dat alle bijgedragen code kan worden gedistribueerd onder de ISC-licentie.

Licentie

node-cron staat onderISC License.