egg(15)--定时任务schedule

本文介绍了Node.js中服务的创建及使用,包括新闻服务的实现和两种不同的定时任务调度方式。通过具体代码示例,展示了如何利用egg框架进行服务定义和数据返回,以及如何设置定时任务来执行特定功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录结构

clipboard.png

文件内容

service/news.js
'use strict';

const Service = require('egg').Service;

class NewsService extends Service {
  async getNewsList() {
    return [
      {
        title: '11',
      },
      {
        title: '22',
      },
      {
        title: '33',
      },
    ];
  }
  async getContent() {
    return {content: 'content11',}
  }
}

module.exports = NewsService;

schedule第一种写法

schedule/watchFile.js
const Subscription = require('egg').Subscription;
var i = 0;
class WatchFile extends Subscription {
  static get schedule() {
    return {
      interval: '2s',
      type: 'all',
    };
  }
  async subscribe() {
    i++;
    console.log(i);
    var result  = await this.ctx.service.news.getContent();
    console.log(result)
  }
}

module.exports = WatchFile;

schedule第二种写法

schedule/spider.js
var k = 110;
module.exports = {
    schedule:{
        interval:'1s',
        type:'all'
    },
    async task(ctx){
        ++k;
        console.log(k)
        var result  = await ctx.service.news.getNewsList();
        console.log(result)
    }
}

效果

clipboard.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值