0
我正在將現有的數據庫(Wordpress)驅動的站點轉換爲Angular 2前端,保持後端原樣。我在路由階段,我想創建從數據庫中提取的JSON數據的路由。Angular 2動態路由
所以,我創建了一個服務從數據庫和一個單獨的路由模塊提取數據,註冊路線:
app-routing.module.ts
import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
import { NavService } from './nav.service';
var navService: NavService;
const routes: Routes = navService.getRoutes();
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class AppRouting{}
nav.service.ts
import { Injectable } from '@angular/core';
import { Http } from '@angular/http';
import 'rxjs/add/operator/map';
import 'rxjs/add/operator/toPromise';
@Injectable()
export class SiteNavService{
private _navUrl = 'pathtofile/?action=ajax_site_nav';
constructor(private _http: Http){}
getNav(){
return this._http.get(this._navUrl)
.map(res => res.json())
.toPromise();
}
}
該服務是在應用程序註冊。 module.ts提供程序數組和導入數組中的路由模塊。我無法讓nav.service在路由模塊文件中工作。
我可以看到你做了什麼,但這不是我想要達到的目標,我開始認爲這是不可能的。我想從數據庫中獲取路由器配置。因此,路徑及其各自的組件名稱與任何其他路由器屬性一起存儲在數據庫中。 –