【发布时间】:2014-12-09 19:57:14
【问题描述】:
如何配置 Express 以呈现所有 Jade 文件而不考虑路径?我正在使用的应用程序很大,结构非常复杂。我成功地提供了静态文件,但是我需要渲染其中的许多文件。我们将 Jade 用于所有需要标记的文件。
我担心下面的模式会迫使我为每个包含 Jade 文件的文件夹创建一个路由别名......这会很糟糕。我想告诉 Express 用 .jade 扩展名简单地渲染所有内容......或者......允许我为根创建一个路由 PREFIX,这将导致渲染操作而不是静态。
client
app
services
modules
moduleA
itemA
itemAList.jade
itemAList.js
itemADetails.jade
itemADetails.js
itemB
itemBList.jade
itemBList.js
itemBDetails.jade
itemBDetails.js
moduleB
itemC
itemCList.jade
itemCList.js
itemCDetails.jade
itemCDetails.js
itemD
itemDList.jade
itemDList.js
itemDDetails.jade
itemDDetails.js
assets
js
css
server
config
views
Routes.Config.js
module.exports = function(app){
app.get('/*', function(req, res){
res.render('../../client/' + req.params[0]);
});
app.get('/', function(req, res){
res.render('../../client/index', {});
})
}
Express.Config.js
[snip]
app.use(express.static(path.join(constants.rootPath, '/client')));
【问题讨论】: