CNode

Node.js 报错 "title is not defined"

CChoCheckTsui发布于12 年前最后回复9 年前7 回复20004 浏览0 收藏

错误如下: ReferenceError: /Users/victor/mymicroblog/views/layout.ejs:4 2| 3|

4| <%= title %> 5| 6| 7| body { title is not defined

访问页面locathost:3000/显示内容如下: ReferenceError: /Users/victor/mymicroblog/views/layout.ejs:4 2| 3| >> 4| <%= title %> 5| 6| 7| body { title is not defined at eval (eval at (/Users/victor/mymicroblog/node_modules/ejs/lib/ejs.js:237:14), :29:89) at eval (eval at (/Users/victor/mymicroblog/node_modules/ejs/lib/ejs.js:237:14), :29:2010) at /Users/victor/mymicroblog/node_modules/ejs/lib/ejs.js:250:15 at Object.exports.render (/Users/victor/mymicroblog/node_modules/ejs/lib/ejs.js:288:13) at View.exports.renderFile [as engine] (/Users/victor/mymicroblog/node_modules/ejs/lib/ejs.js:318:20) at View.render (/Users/victor/mymicroblog/node_modules/express/lib/view.js:76:8) at Function.app.render (/Users/victor/mymicroblog/node_modules/express/lib/application.js:503:10) at ServerResponse.res.render [as partial] (/Users/victor/mymicroblog/node_modules/express/lib/response.js:802:7) at /Users/victor/mymicroblog/node_modules/express-partials/index.js:75:13 at View.exports.renderFile [as engine] (/Users/victor/mymicroblog/node_modules/ejs/lib/ejs.js:318:3)

我的layout.ejs相关代码片段如下:

我的routes/index.js相关代码片段如下: router.get('/', function(req, res) { res.render('index', { title: '首页' }); });

查看回复

回复 (7)

N
nihgwu#1·12 年前

layout 里用locals.title

C
ChoCheckTsui#2·12 年前

@nihgwu 十分感谢!按照你说的成功了!但请问为什么这么改就ok了呢?

B
bykege#3·11 年前
A
a69694510#5·9 年前
引用 nihgwulayout 里用locals.title

@nihgwu 请问是什么原理啊 我也成功了

N
nihgwu#6·9 年前

真能挖坟。。

N
nihgwu#7·9 年前

原因就是 index 可以直接用 <%= title %> ,layout 里要用 <%= locals.title %>

参与回复
登录后即可参与回复。登录