서비스에서 경로 데이터를로드하고 각도 2 RC 결승으로 경로를 자동 생성하려고합니다. Router.Module.forRoot() 함수를 통해 경로 데이터를 할당 할 수 있지만 가져온 데이터를 함수에 할당하는 방법은 알 수 없습니다. 아래 코드를 시도했지만 "Property 'forRoot'가 'RouterModule'오류"유형에 존재하지 않습니다.각도 2 RC 결승 - 서비스에서 경로 데이터를 동적으로로드
나는 완전히 벗어 났지만 코드는 대략 내가 성취하려고하는 것을 보여야합니다. 앱 경로는 다음과 같습니다. mysite.com/london/ mysite.com/new-york/ 등이 방법이 있습니까?
내가 사용하고 라우터 버전입니다 : "각/라우터 @": "~ 3.0.1"
app.module.ts :
import { NgModule, OnInit } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { FormsModule } from '@angular/forms';
import { HttpModule } from '@angular/http';
import { AppComponent } from './app.component';
import { RouterModule } from '@angular/router';
import { PathService } from './path.service';
import { Path } from './path';
@NgModule({
imports: [
BrowserModule,
FormsModule,
HttpModule,
RouterModule
],
declarations: [
AppComponent
],
providers: [
PathService
],
bootstrap: [ AppComponent ]
})
export class AppModule implements OnInit {
private ROUTES: Array<Object>;
private paths: Path[];
constructor(
@Inject(RouterModule) private _routerModule: RouterModule,
@Inject(PathService) private _pathService: PathService) {}
ngOnInit() {
this.getPathData();
}
getPathData() {
this._pathService.getPaths().subscribe((paths: Path[]) => this.paths = paths, (err: any) => { },() => this.generateRoutes());
}
generateRoutes() {
this.ROUTES = 'do something to this.paths and assign route date here';
this._routerModule.forRoot(this.ROUTES);
}
}
JSON :
[
{
id: "1",
name: "London",
path: "london"
},
{
id: "2",
name: "New York",
path: "new-york"
},
{
id: "3",
name: "Paris",
path: "paris"
},
{
id: "4",
name: "Tokyo",
path: "tokyo"
}
]
난 그냥'경로를 사용하여 내 자신의 문제를 해결 결국에 불과하는 데 도움이 의심한다. 이것은 단지 그것에 던져진 모든 도시를 처리합니다. – skyscript