Reputation: 8419
I have an angular application for which I would like to refresh the page periodically say everyday at 12PM. To do so, I want to use the cron
library which in principle should do the job. My cron implementation is the following:
import { CronJob } from 'cron';
const cron: CronJob = new CronJob('* * * * * *', () => {window.location.reload()}, null,true);
cron.start();
My problem is where to put that code. If I put it in a component then the cron will be restarted each time the component will be reloaded which should be avoided. The problem will be the same with a service that would be injected in a component. So where can I put my cron so that it is declared just once for all ? Would you have any idea ?
Upvotes: 0
Views: 304
Reputation: 1126
I would recommend avoiding reloading the entire app every few minutes to avoid the bootstrapping process involved with every reload. Preferably, use a Service to reload the specific components you want to periodically update.
That being said, if you are intent on reloading the entire app with this approach, you can either
provideIn: root
, and have the service injected into the app.component. this will ensure your service is initialized only once.
Upvotes: 2