我已经使用参数配置了Angular2路由。当我从我定义的/censo/119
之一访问/viaje/119
或[routerLink]
时,它工作正常。但是当我直接进入网址http://localhost:3000/censo/119
时,我得到了一个404。
我正在使用lite-server
作为我的开发应用。
我错过了配置吗?我需要使用其他服务器吗?
这是我的app.routes.ts
const routes: RouterConfig = [
{ path: '', component: CensoComponent },
{ path: 'censo', component: CensoComponent },
{ path: 'viajes', component: ViajesComponent },
{ path: 'censo/:viaje', component: CensoDetailComponent },
{ path: 'viajes/:viaje', component: ViajesDetailComponent },
];
这是我的routerLinks
<a [routerLink]="['/censo']">Censo</a>
<a [routerLink]="['/viajes']">Viajes</a>
<a [routerLink]="['/censo',119]">Censo 119</a>
<a [routerLink]="['/viajes',119]">Viaje 119</a>
<router-outlet></router-outlet>
修改
我添加了一个bs-config.json
,但我的行为却相同。
{
"port": 8000,
"files": ["./**/*.{html,htm,css,js}"],
"server": { "baseDir": "." }
}
这是我的项目结构,以防万一。
由于
答案 0 :(得分:0)
您应该从与lite-server
相同的位置运行index.html
命令。默认行为提供当前文件夹中的内容,打开浏览器,并将HTML5后备应用于index.html
。
如果由于某种原因无法执行该文件夹中的命令而index.html
位于src
地图中,该地图是您执行lite-server的文件夹的子项,则应添加一个bs-config.json
文件,其server
和baseUrl
属性如下:
{
"server": { "baseDir": "./src" }
}
按照配置的文件名和位置运行这样的lite-server:
lite-server -c ./bs-config.json