2013-08-26 58 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'); 
});