学node.js开发指南中碰到的一个小问题,调用的模版最后返回不含有layout.ejs的内容
发布于 11 年前 作者 liangqin 5099 次浏览 最后一次编辑是 8 年前

刚才打算开始跟着书本写那个微博系统,但是发现一个小问题,无法调用layout.ejs,就是返回客户端的只是index.ejs中的内容,没有layout.ejs的内容,不是说其他的ejs,都是layout.ejs的子类么?不知道应该怎么解决已经换了模版引擎为ejs的了~求大神请教!!!谢谢

7 回复

已经找到了一个折中的解决方法就是在inde.ejs的前面加<%-include header%>后面加<%-include footer%>其中heade.ejs的内容是layout在<%=body%>的前一部分,footer对应的是后一部分,这样虽然可行,但是总感觉还是别扭,求指教! 上述方法参考enter link description here

res.render('index', {layout: false});
res.render('index', "layout":false);

具体忘记了,这两个试试

不用默认的layout.ejs模板,使用其它模板,比如layout_another.ejs,可以这样:

res.render('board/board', {
    board:board, 
    layout:'layout_another'
});

不使用任何模板,可以这样:

res.render('sign/login', {
    error:'请先登录.',
    layout:false
});

@hexie 之前有试过,不过貌似不行,搞不懂

@sumory 谢谢,是个好方法

回到顶部