如何在路由index.js中通过render向index.jade传递一个数组 或者一个对象参数
我直接使用这样的方式
index.js中代码
var args = {
};
var sources = require('./index.json');
router.get('/', function(req, res) {
args.title = '万万花花';
args.yygh = sources.yygh;
res.render('index', { args:args});
});
我想这样因该是可以的吧 index.jade
each item in args.banner
结果抛出了错误如下:
2| html(lang='zh-cn')
3| head
> 4| title= args.title
5| meta(name="keywords" content="关键词")
6| meta(name="description" content="描述")
7| meta(http-equiv="Content-Type" content="text/html; charset=utf-8")
Cannot read property 'title' of undefined
这算不算没有把参数传递进jade中
8 回复
难道不能传递一个对象吗。我传递一个字符串 title确可以访问
@lonso title #{args.title} 5| meta(name=“keywords” content=“关键词”) 6| meta(name=“description” content=“描述”) 7| meta(http-equiv=“Content-Type” content=“text/html; charset=utf-8”)
Cannot read property ‘title’ of undefined 看来这两种用法一样
你用了each为什么下面的循环体不是item,另外你可以直接 jade里将args打印出来看看就什么都明白了,#{args}
@pockry #{args}是空的 看来没有传过去
好了诶 自己解决了。
@upwwhh 怎么解决的?
@alsotang 要重启nodejs,作为server
args的声明要搬到回调里面吧?