如何在sailsjs应用程序中使用漂亮的错误?

漂亮的错误必须像这样设置:

require('pretty-error').start(function(){ startTheApp(); }); 

因为我现在没有sailsjs启动应用程序,所以我在config/bootstrap.js上试过这个:

 module.exports.bootstrap = function (cb) { require('pretty-error').start(cb) } 

但它不工作。

任何指导方针?

pretty-error对于简单的节点程序来说非常容易使用,你可以在callback中包装整个东西,但是对于更大的应用程序来说,有点麻烦。 如果您想在Sails v0.10中完全覆盖pretty-error ,可以执行以下操作:

首先,在您的根app.js文件中,将sails.lift(rc('sails'))包装sails.lift(rc('sails'))

 require('pretty-error').start(function(){ // Start server sails.lift(rc('sails')); }); 

这会处理你的控制器代码之外的错误(例如你的bootstrap.js错误)。

其次,在你的api/responses/500.js ,需要在顶部pretty-error ,然后replacesails.log.error(errorToLog); 有:

 var pe = new PrettyError(); console.log(pe.render(errorsToDisplay[i].original ? errorsToDisplay[i].original : errorsToDisplay[i])); 

这应该处理您的控制器和模型中的错误。