在我的节点应用程序中,我想将URL中的路径和不确定数量路由到一个模板,然后向该模板显示所有路径的数组。
例如,我想允许路由'/'
,/foo/
,/foo/bar/
和/foo/bar/[...etc]
all指向同一个视图模板,路径拆分为数组,分别为:[]
,['foo']
,['foo','bar']
。
这段代码似乎回答了问题的第一部分:
app.route('/*')
.get(function (req, res) {
res.render('index',{
paths: req.params[0]
});
});
但是当我遍历模板中的paths
变量时,每个字母都是单独输出而不是路径。
这可能吗?如果是这样,一些帮助将不胜感激。
答案 0 :(得分:2)
那是因为你在循环一个字符串,所以它从该字符串中拉出每个字符。只需将req.params[0]
更改为req.params[0].split('/')
。
http://localhost:4000/my/full/path
会在您的视图中将[ 'my', 'full', 'path' ]
作为paths
变量。