1

我尝试从风帆中的翡翠输出漂亮的印刷品。我试图像这样配置玉:

module.exports.bootstrap = function (cb) {
    // Development environment
    if (sails.config.environment === 'development') {

        sails.config.express.customMiddleware = function () {
            var app = sails.express.app;
            app.set('view options', { pretty:true });
            // app.locals.pretty = true;
       }
    }
    cb();
};

但它失败了。知道如何正确执行此操作吗?

4

3 回答 3

2

这对我有用。

module.exports.bootstrap = function (cb) {

  // Development environment
  if (sails.config.environment === 'development') {

      console.log('development --------');
      var app = sails.express.app;
      app.set('view options', { pretty:true });
      app.locals.pretty = true;

  }

  cb();
};
于 2013-09-03T16:58:54.737 回答
2

对于较新版本的 Sails(我使用的是 v0.11.0-rc4,预发布 0.11 分支),sails.express.app 不起作用。在阅读了Sails 的中间件文档后,我将以下代码添加到 local.js,它可以按需要工作。请记住,具有 http.customMiddleware 功能的其他配置文件将通过将其添加到 local.js 来覆盖/被覆盖。

http: {
  customMiddleware: function(app) {
    if (sails.config.environment === 'development') {
      app.set('view options', {pretty: true});
      app.locals.pretty = true;
    }
  }
}

附带说明一下,我还将下面的“prettyPrint”函数和代码添加到 config/http.js 文件中,作为中间件堆栈的一部分。在我看来,它似乎更适合 local.js(上面的代码)。

// have JADE output nicely on development
prettyPrint: function (req, res, next) {
  if (sails.config.environment === 'development') {
    req.app.set('view options', {pretty: true});
    req.app.locals.pretty = true;
  }
  return next();
}
于 2014-12-30T22:46:22.567 回答
0

尝试设置

module.exports.express.customMiddleware = function () {


};
于 2013-05-24T01:05:05.860 回答