javascript - 如何在 SailsJS 中的特定时间运行服务

标签 javascript service sails.js

我正在寻找一种在 SailsJS 中的特定时间启动服务的方法。在本例中,我有一个 Event model,其中包含两个属性:一个 boolean,默认为 false以及每当创建事件时分配的日期时间。此外,还有一个根据日期时间触发的endEvent服务。

对于每个创建的事件,我希望我的整个过程是这样的:

  1. boolean 属性初始化为 false
  2. 日期时间设置为 future 时间。
  3. 根据将boolean属性从false设置为true日期时间运行服务。<

我的模型:

// Event.js
module.exports = {
  attributes: {
    end: {
      type: 'boolean'
    },
    deadline: {
      type: 'datetime'
    }
  }
}

我的服务:

// endEvent.js
module.exports = {

  setEnd: function(event) {
    Event.findOne(event).exec(function (err, result) {
      result.end = true;
      result.save();
    });
  }
};

但是我找不到在特定时间运行服务的正确方法。

预先感谢您的帮助!

最佳答案

sailsjs 不支持开箱即用的任务调度。您将必须使用类似 node-cron 的包或agendakue并构建您自己的解决方案。另外,还有一个 sails 钩,sails-hook-schedule您可以尝试一下。

关于javascript - 如何在 SailsJS 中的特定时间运行服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35366690/

相关文章:

javascript - "this."对象引用 : Can't access model in onInit 范围的问题

javascript - 使用附加数据将函数传递给 sails.js

database - PostgreSQL 图形安装程序 : The specified service does not exist as an installed service

java - 处理程序、可运行和服务 : I put everything together and it doesn't really work

sails.js - Sails JS : How to create model objects from the result of . 查询()?

authentication - 如何在 Sails js 中创建基于路由的安全策略?

javascript - 如何解析JS用户名?

javascript - :not(. 类)不工作?

javascript - 如何使用 JavaScript 获取光标下的三个单词?

android - 如何在 android 上进行集成测试(或者如何在 TestCase 中获取和注入(inject)多个组件)