我正在研究需要根據某些外部數據源配置路由的應用程序。該應用程序的生命週期是這樣的:基於外部數據的動態路由
- NG2 inits與App
- 應用程序中包含頭,路由器,出口和頁腳
- 默認路由配置到homeComponent
- homeComponent有categoriesListComponent
- categoriesListComponent從categories中調用get方法服務
- categoriesService從api獲取類別列表
- categoriesComponent呈現列表,並通過爲每個類別注入新的路線返回到應用一個routesConfigurator
有抽象的實際另一層具有routesService但不需要在這個例子中
那部分作品,因爲我們開始在主頁上,api調用被創建併爲每個類別創建了routerConfigs。因此,當用戶點擊某個類別時,該路線已經配置了正確的categoryComponent +元數據,並顯示了正確的信息。
但是,如果直接訪問特定類別頁面,ng2還沒有該路由的routerConfig,因爲api調用還沒有返回任何東西,更不用說還發射了。 Ng2只是使用Header,Footer和一個空的router-outlet呈現基本App。
我能想到的唯一解決方案就是「哈克」。在應用服務器上保存一個緩存的json文件,並將其加載到最初的html中,然後將其注入到ng2 bootstrap/init的服務中。這樣,在ng2甚至是存活頁面之前配置路由。
我在尋求任何其他可能的建議,或許是一些有更多ng2經驗的人,我可以加入。也許這已經解決了,我還沒有完善我的google-fu。
在此先感謝。
對不起,但我無法注意到您的內容中有任何問題?! – AngJobs
'我要求任何其他可能的建議......' –
好吧,它太多了,我只是快速掃描它的任何問號,沒有找到任何。 – AngJobs