2013-08-26 57 views
2

我正在學習Node和Angular。作爲我學習的一部分,我目前正在嘗試設置一個包含三頁的基本應用程序。爲了做到這一點,我依靠的文檔有:enter link description here使用Angular和Node進行路由

我的項目是目前的結構如下,但:

/app 
    /views 
    page1.html 
    page2.html 
    page3.html 
    /resources 
    /javascript 
     angular-1.0.7.min.js 
     controllers.js 
    index.html 

我的index.html中的代碼非常簡單。它看起來像這樣:

<!doctype html> 
<html ng-app="ngView"> 
    <head> 
    <title></title> 
    <script type="text/javascript" src="/resources/javascript/angular-1.0.7.min.js"></script> 
    <script type="text/javascript" src="/resources/javascript/controllers.js"></script> 
    </head> 

    <body> 
    <div ng-controller="Index"> 
     <a href="page1">Page 1</a> 
     <a href="page2">Page 2</a> 
     <a href="page3">Page 3</a> 

     <div ng-view></div> 
    </div>   

    <script type="text/javascript"> 
     angular.module('ngView', [], function ($routeProvider, $locationProvider) { 
      $routeProvider. 
       when('/page1', { templateUrl: 'app/views/page1.html', controller: Page1Controller }). 
       when('/page2', { templateUrl: 'app/views/page2.html', controller: Page2Controller }). 
       when('/page3', { templateUrl: 'app/views/page3.html', controller: Page3Controller }). 
       otherwise({ redirectTo: 'app/views/page1' }); 

      $locationProvider.html5Mode(true); 
     }); 
    </script> 
    </body> 
</html> 

出於某種原因,我的意見不像他們在這個例子中出現。我錯誤地設置了什麼?

+0

我相信你有設置您的節點服務器文件中的路線,讓角處理它們(我只用快遞+節點完成它) – tymeJV

+0

可能將需要查看該controller.js文件的內容 – BoxerBucks

+0

是的 - 正如@ BoxerBucks所說,我們需要查看控制器的內容以及您如何設置nodeJs服務器......您是否處理了模板的交付或呈現? – callmekatootie

回答

0

您是否將正確的請求從節點服務器轉發給角?如果使用表示這可能是這個樣子:

router.all('/*', function(req, res) { 
    res.sendfile('index.html'); 
});