我不确定我在哪里搞砸了。基本上我是从我的数据库中读取来生成一个html页面并动态设置一些锚标签的hrefs。但是,当我单击链接时,页面只会重新加载并且不会向服务器发送GET请求。 Jade渲染的重要部分就在这里。
each val in tournaments
a(href="/home/tournaments/?_id=" + val._id)
_id param只是MongoDB在创建时为文档提供的默认_id。
我也使用Express处理我的服务器端请求。与此相关的是:
app.route("/home/tournaments/:id")
.get(function(req, res, next) {
console.log("Request: " + req.query._id);
});
单击锚标记时,没有任何内容打印到控制台,所以我猜它由于某种原因没有到达此路径。
任何人都可以解释我做错了什么以及我需要做些什么来解决它?
提前致谢。
答案 0 :(得分:0)
问题是您将ID放在查询字符串中而不是实际的url路径中。因此,为了使您现有的路线匹配,您需要改为:
each val in tournaments
a(href="/home/tournaments/" + val._id)
然后使用req.params.id
代替req.query._id
。
或您可以将路线模式调整为/home/tournaments
。