我在没有经过route-href锚点的情况下直接访问链接有问题。例如,站在页面上并点击刷新,或者复制粘贴浏览器窗口中的链接。
什么有效:
什么不起作用:
http://localhost:9000/boards/1
http://localhost:9000/boards/anysuburl
我得到的错误是:
GET http://localhost:9000/boards/scripts/vendor-bundle.js 404 (Not Found)
如果我从以下位置更改vendor-bundle的路径:
<script src="scripts/vendor-bundle.js" data-main="aurelia-bootstrapper"></script>
到:
<script src="/scripts/vendor-bundle.js" data-main="aurelia-bootstrapper"></script>
供应商包已解决,但我在app-bundle.js上收到相同的错误
如何设置路由器:
configureRouter(config, router) {
config.title = 'Aurelia';
config.options.pushState = true;
config.options.root = '/';
config.map([
{
route: ['', 'cards'],
name: 'cards',
moduleId: './pages/cards/cards',
nav: true,
title: 'Cards',
},
{
route: ['boards'],
name: 'boards',
moduleId: './pages/boards/index',
nav: true,
title: 'Boards',
},
{
route: ['boards/:id'],
name: 'board',
moduleId: './pages/boards/details',
title: 'Board',
}
我已尝试过&#39; / pages&#39;,&#39; ./ pages&#39;和&#39;页面&#39;结果相同
答案 0 :(得分:1)
在html中添加基础标记,如下所示:
<base href="/">