我在快递中遇到相关链接问题。他们似乎在两层深处工作,然后就停止了。
我试图说明我遇到的问题。
查看页面@ http://example.com
- >单击href="level-1"
的锚点。这可以按预期工作,并链接到http://example.com/level-1
。
查看页面@ http://example.com/level-1
- >单击href="level-2"
的锚点。
这可以按预期工作,并链接到http://example.com/level-1/level-2
。
查看页面@ http://example.com/level-1/level-2
- >单击href="level-3"
的锚点。 NOT 按预期工作,并链接到http://example.com/level-1/level-3
。
我可以使用http://example.com/level-1/level-2/level-3
href="level-2/level-3"
我认为这可能是我的路线组织的方式,但无论我对他们做什么,行为似乎都是一样的。
目前我有类似
的东西main.js
...
var app = express();
var routes = require('./router')(app);
路由器/ index.js
module.exports = function(app) {
app.use('/level-1', require('./routes/level-1'));
app.use('/', require('./routes/home'));
};
路由器/路由/电平1.js
var express = require('express');
var router = express.Router();
router.use('/level-2', require('./level-2'));
router.get('/', function(req, res) {
res.render('level-1');
});
module.exports = router;
路由器/路由/电平2.js
var express = require('express');
var router = express.Router();
router.use('/level-3', require('./level-3'));
router.get('/', function(req, res) {
res.render('level-2');
});
module.exports = router;
路由器/路由/电平3.js
var express = require('express');
var router = express.Router();
router.get('/', function(req, res) {
res.render('level-3');
});
module.exports = router;
希望我提供了足够的信息。
答案 0 :(得分:0)
我找到了问题的答案。我不得不将尾随/
添加到导致问题页面的锚点链接。
让我感到害怕的原因是它可以从导航栏访问第一级页面,并以href="/level-1/"
的方式链接到所有页面,链接从那时起生成并且没有使用前向斜杠生成href="level-2"
。