【发布时间】:2016-11-18 08:57:01
【问题描述】:
我目前正在使用这个:@angular/router@3.0.0-alpha.7 & 我想将它升级到@angular/router@3.0.0-beta.2。 这是我的 app.routes.ts
import { provideRouter, RouterConfig } from '@angular/router';
import {SubjectsComponent} from './subjects.component';
import {ProfileDetailsComponent} from './profileDetails.component';
import {AgreementComponent} from './agreement.component';
export const routes: RouterConfig = [
{ path: 'subjects', component: SubjectsComponent },
{ path: 'profile', component: ProfileDetailsComponent },
{ path: 'agreement', component: AgreementComponent }
];
export const appRouterProviders = [
provideRouter(routes)
];
我已经更改了路由器的版本,将 rc.3 更改为 rc.4,仍然得到相同的错误。这是我的 package.json:
"dependencies": {
"@angular/common": "2.0.0-rc.4",
"@angular/compiler": "2.0.0-rc.4",
"@angular/core": "2.0.0-rc.4",
"@angular/forms": "~0.1.0",
"@angular/platform-browser": "2.0.0-rc.4",
"@angular/platform-browser-dynamic": "2.0.0-rc.4",
"@angular/router": "^3.0.0-beta.2",
"@angular2-material/button": "^2.0.0-alpha.6",
"@angular2-material/card": "^2.0.0-alpha.6",
"@angular2-material/checkbox": "^2.0.0-alpha.6",
"@angular2-material/core": "^2.0.0-alpha.6",
"@angular2-material/icon": "^2.0.0-alpha.6",
"@angular2-material/input": "^2.0.0-alpha.6",
"@angular2-material/list": "^2.0.0-alpha.6",
"@angular2-material/progress-bar": "^2.0.0-alpha.6",
"@angular2-material/progress-circle": "^2.0.0-alpha.6",
"@angular2-material/radio": "^2.0.0-alpha.6",
"@angular2-material/sidenav": "^2.0.0-alpha.6",
"@angular2-material/tabs": "^2.0.0-alpha.6",
"@angular2-material/toolbar": "^2.0.0-alpha.6",
"core-js": "^2.4.0",
"reflect-metadata": "0.1.3",
"rxjs": "5.0.0-beta.6",
"systemjs": "0.19.26",
"zone.js": "^0.6.12"
},
【问题讨论】:
-
以为您只需要更改 package.json 中的版本号,然后 npm 安装即可。好吧,至少我是这样做的。
-
我做了同样的事情并得到了这个:例外:无法解析RouterOutlet的所有参数:(RouterOutletMap,ViewContainerRef,?,名称)。所以我想也许我做错了什么..
-
你能分享你的RouterConfig代码吗?我猜你缺少 pathMatch: 'full'
-
@Sanket 我已经添加了代码,你能告诉我我应该在哪里添加 pathMatch: 'full' 吗?
-
pathMatch: 'full' 不是必需的,因为您没有使用redirectTo 进行重定向。