带promise的Sails.js模板助手(过滤器)

带promise的Sails.js模板助手(过滤器),sails.js,ejs,Sails.js,Ejs,我刚刚接触到Sails.js,想知道EJS模板系统是否有办法运行一个包含承诺或数据库查询的助手函数。这项工作: 在config/http.js中: module.exports.http = { // ... locals: { filters: { testHelper: function(input) { return input; } } } } 这并不是: module.exports.http = { // ... locals: {

我刚刚接触到Sails.js,想知道EJS模板系统是否有办法运行一个包含承诺或数据库查询的助手函数。这项工作:

在config/http.js中:

module.exports.http = {
  // ...
  locals: {
    filters: {
      testHelper: function(input) { return input; }
    }
  }
}
这并不是:

module.exports.http = {
  // ...
  locals: {
    filters: {
      testHelper: function(input) {
            MyModal.create({test:'test'}).exec(function(err,mm){
                  return input+'-'+mm.test;
              });
          }
    }
  }
}

第一个总是返回“check”,第二个总是返回“undefined”,当在模板
中使用“{{'check'| testHelper}}”

您可以使用类似于包装和返回承诺的库。我建议将“helper”创建为一个服务,并在全局范围之外访问它,而不是将它注入到您的视图中

非常感谢您的回复,我已经看了“wait.for”库,它看起来很棒,您有没有可能发布我如何使用上面的过滤器作为示例的任何示例?