尝试运行网站时NodeJs错误
所以我一直在做一个投票应用程序的挑战一段时间,我完成了注册和login部分,但后来遇到了一个问题,我不明白为什么会发生:
每当我试图去“民意调查”部分,它给了我一个错误:
TypeError: /home/ubuntu/workspace/views/polls.ejs:2 1| <%include header.ejs %> >> 2| <%include nav.ejs %> 3| <div id = "home" class = "container"> 4| <h1>Polls</h1> 5| </div> esc is not a function
PS行1〜5是我在polls.ejs文件中的所有内容
这是我的polls.js文件的代码:
const express = require('express'); const router = express.Router(); router.get('/', function (req, res) { res.render('polls'); }); module.exports = router;
这里是我的nav.ejs文件的代码:
<body> <header> <nav class="navbar navbar-dark navbar-full navbar-fixed-top" style="background-color: #0099ff;"> <div class="container"> <% if(authenticated === false){ %> <a id="title" class="navbar-brand" href="/" style="color: #dddddd">FFC Voting App</a> <ul class="nav navbar-nav pull-sm-right" style = "float: right;"> <li class="nav-item active"><a class="nav-link" href="/polls">Polls</a></li> <li class="nav-item"><a class="nav-link" href="/login">Login In</a></li> <li class="nav-item"><a class="nav-link" href="/signup">Sign Up</a></li> </ul> <% }else{ %> <a id="title" class="navbar-brand" href="/" style="color: #dddddd">FFC Voting App</a> <ul class="nav navbar-nav pull-sm-right" style = "float: right;"> <li class="nav-item active"><a class="nav-link" href="/polls">Polls</a></li> <li class="nav-item"><a class="nav-link" href="/mypolls">My Polls</a></li> <li class="nav-item"><a class="nav-link" href="/">Logout</a></li> </ul> <%}%> </div> </nav> </header>
这里奇怪的是,如果我拿出nav.ejs文件的if / else语句,它工作得很好,但是当我添加它时,它给了我错误。
有谁知道为什么会发生,我怎么能解决它?
esc is not a function
是说你有一个未定义的variables的ejs
方式。
在这种情况下,这意味着你的variablesauthenticated
是未定义的。
- Node.js Express应用程序中出现Jade(1.0+)模板错误:“不允许使用重复键”id“。
- 书架(knex) – belongsToMany关系不工作
- Express 3.0 + Everyauth + HTTPS
- connect-redis和快速会话
- nodejs +护照+快递3.0 +连接闪光灯不闪烁?
- 如何在Node.js中使用类似php的session_id()?
- mongoose – 不赞成mongodb@2.2.16:请升级到2.2.19或更高?
- 使用callback函数返回string而不是HTML
- 我的导航菜单有问题。 我正在使用Bootstrap 3,JQuery 2.3.1,Jade,ExpressJS和Node.js