2015-05-13 17 views
0

我有兩個HTML文件 - 在一維的思想,其中index.html作爲主頁,app-route作爲主路由器>index.htmlstart.htmlAngularJS:在單個應用程序中是否可以使用兩個不同的路由器(每個.html一個)加載兩個不同的html?

到目前爲止,我正在開發一個應用程序(小應用程序)應用程序。現在我們正在創建一個更大的應用程序,如.com網站,並將以前的應用程序與此集成在一起(.com)。

我們不想打擾較小的應用程序代碼,我們正在開發一個.com網站,它是一個不同的html(start.html)和一個不同的路由器(dot-com-route.js)。現在,無論何時我嘗試加載http://localhost/myApp/app/#/start.html,它都會通過app-route.js加載index.html?

它總是像角度應用程序尋找index.html文件來執行?

這是我的應用程序,route.js:

smartPrintApp.config(['$routeProvider','$locationProvider', 
    function($routeProvider, $locationProvider) { 
     $routeProvider. 
     when('/', { 
     templateUrl: 'pages/smart_print_landing/smart-print-landing.html' 
     }). 
     when('/index.html', { 
     templateUrl: 'pages/smart_print_landing/smart-print-landing.html' 
     }) 
    } 
]); 
+0

我相信你已經在路由中加入了角碼('when('/')')它使用'index.html'。你能發佈你的JS代碼嗎? – Vucko

+0

@vucko我已經爲你更新了app-route.js – FlashyFuddyFuddy

+1

當你點擊你的http://localhost/myApp/app/#/start.html瀏覽器時會加載一些HTML(取決於你的後端),這應該是你的index.html然後角將檢查散列,並將加載您在templateUrl中指定的模板,並將它注入到任何具有ng-view屬性的index.html中。如果你想讓start.html代替index.html,那麼你需要在服務器上改變它。對不起,如果我不明白你想要什麼 – Molda

回答

2

當你試圖打開http://localhost/myApp/app/#/start.html服務器將實際嘗試服務URL的一部分是http://localhost/myApp/app/。在服務器發送瀏覽器之後,請求的頁面AngularJS將進入播放狀態,並在has(#)之後讀取該部分以確定使用哪條路徑。由於您沒有在服務器正在讀取的部分中包含特定的HTML文件,因此服務器將提供已被設置爲默認值的HTML文件(我假設您獲得的行爲是index.html)。

因此,爲了獲得第二個着陸頁,您應該使用http://localhost/myApp/app/start.html/#/(或類似取決於您希望訪問的路線)作爲URL。

+0

這對我工作的網址是 - > http://localhost/dotcom/app/start.html#/ 以前我試圖http:// localhost/dotcom /應用程序/#/start.html這是錯誤的。 – FlashyFuddyFuddy

相關問題