EJS.JS ReferenceError:标题未定义

时间:2016-06-09 17:51:38

标签: javascript angularjs express ejs

我遇到快递脚本的问题。关于另一个函数的成功,我正在调用一个呈现视图的函数。在这个项目中,我使用angular,node,express和ejs作为视图引擎。当我渲染视图时,遗憾的是我收到以下的ejs错误:

ReferenceError: /Users/emilywfrancis/Desktop/nodejs-angularjs-sequelizejs/views/about.ejs:5

3| <html ng-app="app">

4| <meta charset="utf-8">

5| <link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/font-awesome/3.1.0/css/font-awesome.min.css" />

6| <% include header %>

7| <% include navbar %> 

8| <body>
  title is not defined

以下是代码:

exports.verifyusers= function(req, res) {
models.user.find({
where: {
  email: req.body.email,
  password: req.body.password
}
 }).then(function(res, user) {
    if(user == "user.name") { //if user exists in database
        res.render('/about')
    };
 });
};

2 个答案:

答案 0 :(得分:3)

似乎错误实际上在头文件中,其中包含以下内容:

<%= title %>

我认为将其更改为以下内容将起作用:

<%= (typeof title != "undefined" ? title : "") %>

答案 1 :(得分:0)

如果尚未完成,您需要为标题赋予值。 如果完成,那么@andlrc的答案是正确的,但你仍然想弄清楚它为什么会抛出错误。如果没有,这是不好的做法。

在您的服务器中定义变量名称标题并为其指定字符串。 然后公开你的观点。

In this answer you find an example.