【发布时间】:2012-04-21 09:10:22
【问题描述】:
我目前正在使用 Node.js 的 Express 框架,但在按页面(路由)包含样式表和 javascript 文件时遇到了问题。我正在使用带有以下内容的 routes/index.js 文件的默认 Express 设置:
exports.index = function(req, res){
res.render('index', { title: 'Index Page Test' })
};
exports.browse = function(req, res){
res.render('browse', { title: 'Browse Page Test' })
};
上面的路由工作正常,它按预期将 index.jade 和 browse.jade 加载到 layout.jade 的“主体”中。但是,索引路由所需的资源(CSS 和 JS 文件)与浏览路由所需的资源不同。我是否可以将一个数组传递给包含所需资产的 layout.jade 模板并简单地循环它?
我尝试通过以下方式进行上述操作:
Index.js(路线)
scripts: [
'javascripts/jquery.js',
'javascripts/easel.js',
'javascripts/script.js'
]
接着是:
布局.jade
each js in scripts
script(src= js)
但是,它只是抛出一个错误,提示 “未定义脚本。” 我很确定我做的不对。另外,补充一下,我在这里偶然发现了另一个类似的 StackOverflow 问题:Node.js with Express: Importing client-side javascript using script tags in Jade views? 但我不太喜欢那里显示的方法(它需要一个额外的助手)。如果可能的话,我想坚持模板引擎本身提供的功能。
谢谢。
编辑:如果有帮助,我正在尝试实现类似的目标:http://kerkness.ca/kowiki/doku.php?id=template-site:create_the_template
【问题讨论】:
标签: javascript model-view-controller node.js express