2016-02-01 54 views
0

我必須設置一個由其他團隊在本地開發的wordpress網站。他們使用angularjs。我對角度很陌生。我把wordpress文件放在wamp服務器上。該文件夾的名稱是劇本。Angularjs路線只是本地主機

當我試圖通過使用url localhost/playbook訪問該網站時,我得到一個javascript錯誤,說localhost/home找不到。

我檢查了javascript文件,我看到路由這樣

.when('/', { 
      controller: 'HomeCtrl', 
      templateUrl: '/home' 
     }) 

當我添加/劇本在像下面templateUrl的開始,顯示的頁面

.when('/', { 
       controller: 'HomeCtrl', 
      templateUrl: '/playbook/home' 
     }) 

這究竟是爲什麼。路線不應該通往localhost/playbook?

回答

1

你需要指定template.Assuming您的文件被稱爲home.html擴展.html,與

.when('/', { 
       controller: 'HomeCtrl', 
      templateUrl: '/playbook/home.html' 
     }) 

替換當前代碼對於更具體的path.Consider本的使用情況,您是編碼多模塊的應用程序在Angular.To分離關注,你可能有一個基於每個模塊的文件結構。所以我的路線可能看起來像這樣。對於我的文件,這是在app.js中定義的,它位於我的整個應用程序的JS文件夾內。此外,您可以選擇完全在單獨的文件夾中定義路由。沒有理由默認爲特定的文件或文件夾。

foodApp.config(['$routeProvider',function($routeProvider){ 
    $routeProvider.when('/', 
      { 
     templateUrl:'js/apps/choiceScreen/choice.html', 
     controller:'choiceCtrl' 

    }) 
    .when('/cafe', 
     { 
     templateUrl:'js/apps/cafe/cafeScreen.html', 
     controller:'cafeCtrl' 
    }) 
    .when('/showCafe/', 
     { 
     templateUrl:'js/apps/eachScreen/itemView.html', 
     controller:'itemCtrl' 
    }) 
    .otherwise({ 
     redirectTo: '/' 
    }); 

}]); 
+0

不,現在頁面加載正常。如果在URL中添加路徑文件夾的名稱,它即將到來。我的問題是,爲什麼默認不佔用路由文件夾?它只取決於本地主機 – prasadmsvs

+1

更新我的答案,爲什麼必須具體說明路由。另外,我不確定您的應用程序如何在沒有指定'.html'擴展名的情況下工作。如果你還不清楚,請告訴我。 –

+0

這不是一個前端應用程序。這是一個WordPress的網站。換句話說,這是一個PHP網站。 .htaccess被配置爲接受url中沒有index.php的路由。這就是爲什麼這些路線沒有添加.html的原因。 – prasadmsvs