在Nuxtjs中执行定时任务
Create scheduled jobs with human readable time settings.
Nuxtjs
67 views
May 20, 2024

后端执行定时任务非常容易,只需要在方法上加上@Scheduled就行了,那么Nuxt全栈项目有没有办法执行定时任务呢?答案是有的

是Nuxt生态中的一个模块,用于创建定义任务。

#安装

    pnpm add -D nuxt-scheduler

  

#使用

nuxt.config.ts中使用

    export default defineNuxtConfig({
    modules: [
        'nuxt-scheduler',
    ],
})

  

创建~/server/plugins/SchedulerTask.ts

    import { useScheduler } from '#scheduler';
import { updateFriendScreenShotTask, updateArticleObImageTask } from '~/server/task';

export default defineNitroPlugin(() => {
    startScheduler();
});

function startScheduler() {
    const scheduler = useScheduler();

    scheduler
        .run(() => {
            updateFriendScreenShotTask();
        })
        .dailyAt(0, 22);

    scheduler
        .run(() => {
            updateArticleObImageTask();
        })
        .dailyAt(1, 3);

    scheduler
        .run(() => {
            console.warn('cool beans! I run once a minutes! 😀');
        })
        .everyMinutes(1);
}

  

使用useScheduler()来创建定时任务,每个scheduler都是一个单独执行的任务。

Total PV : 0|UV : 0
Current Online:1
From :