node.js – SailsJs res.render vs res.view

我正在尝试使用SailsJs使用PassportJs EJS模板引擎制作一个简单的身份验证Web应用程序.

这是我在AuthenController.coffee中的代码

processSignin: (req,res) ->
  passport.authenticate('local',(err,user,info) ->
    if err or not user
      return res.view('auth/signin',message:'Failed')
    req.logIn user,(err) ->
      return res.view('auth/signin',message:'Failed') if err
      res.redirect '/'
  ) req,res
  return

如果我使用:res.render(‘/ auth / login’,{message:’err’})

浏览器只返回login.ejs的HTML代码

如果我使用:res.view(‘/ auth / login’,{message:’err’})
然后它返回包含在layout.ejs的<% - body%>中的login.ejs代码.

这有什么不同的解释?它是Sails的新功能还是内置的Express?哪里可以找到关于此的文件

解决方法

res.render是 expressJS method,而res.view是 SailsJs method.后者将请求的视图包装在认布局中,除非请求不同的布局.因此,您必须决定是否只需要您正在请求的已编译模板(res.render)或更完整的视图(res.view).

相关文章

这篇文章主要介绍“基于nodejs的ssh2怎么实现自动化部署”的...
本文小编为大家详细介绍“nodejs怎么实现目录不存在自动创建...
这篇“如何把nodejs数据传到前端”文章的知识点大部分人都不...
本文小编为大家详细介绍“nodejs如何实现定时删除文件”,内...
这篇文章主要讲解了“nodejs安装模块卡住不动怎么解决”,文...
今天小编给大家分享一下如何检测nodejs有没有安装成功的相关...