AngularJS:ngRoute,否则无效

Daz*_*ylz 9 angularjs ngroute

我有一个非常奇怪的错误,我设置了我的路线和我的控制器.现在我只有一个没有错误的空白页面?

index.html的;

<!DOCTYPE html>
<html ng-app="RekenTalent" lang="nl">
    <head>
        <title>Rekentalent.nl: Ben jij een talent in Rekenen?</title>
        <!-- Stylesheets -->
        <link rel="stylesheet" type="text/css" href="/app/front/assets/stylesheets/style.css">
        <!-- AngularJS -->
        <script src="//cdnjs.cloudflare.com/ajax/libs/angular.js/1.2.16/angular.min.js"></script>
        <script src="//cdnjs.cloudflare.com/ajax/libs/angular.js/1.2.16/angular-route.min.js"></script>
        <script src="//cdnjs.cloudflare.com/ajax/libs/angular.js/1.2.16/angular-animate.min.js"></script>
        <!-- Controllers -->
        <script src="/app/front/controllers/controller.js"></script>
        <!-- Router -->
        <script src="/app/front/router.js"></script>
    </head>

    <body ng-view></body>
</html
Run Code Online (Sandbox Code Playgroud)

>

Controller.js:

/**
*  RekenTalent
*
* Copyright 2014 - Rekentalent.nl
*/
var RekenTalent = angular.module('RekenTalentControllers', []);

RekenTalent.controller('rekenCtrl', ['$scope', function($scope){

}]);
Run Code Online (Sandbox Code Playgroud)

Router.js:

var RekenTalent = angular.module('RekenTalent', [
    'ngRoute', 'RekenTalentControllers'
]);

RekenTalent.config(['$routeProvider', function($routeProvider) {
    $routeProvider.
    when('/index', {
        templateUrl: '/templates/index.html',
        controller: 'rekenCtrl'
    }).
    otherwise({
        redirect: '/index'
    });
}]);
Run Code Online (Sandbox Code Playgroud)

而/templates/index.html只是说'嗨'.有谁知道为什么我得到一个空白页面?它应该将我重定向到/index.html,而/index.html应该使用/templates/index.html作为模板.问题和解决方案是什么?

更新:

当我去/索引它工作,所以否则param不工作,为什么不呢?

Mil*_*lad 18

改变redirectredirectTo

最好使用home.template来避免所有这类问题,我的意思是考虑:

你有一个index.html包含整个包含的脚本,如angular,jquery,...,并且在body标签中有ng-view,好吗?

现在,如果你有任何模板,如欢迎或索引的任何模板,写一个模板home.html,好吗?像这样:

index.html:

<body ng-app="yourapp">
   <div ng-view>
   </div>
</body>
Run Code Online (Sandbox Code Playgroud)

Home.html中

  <div>
     Welcome, user. This is index.
  </div>  
Run Code Online (Sandbox Code Playgroud)

您的应用配置:

yourapp.config(function($routeProvider) {
   $routeProvider
      .when('/', {
         templateUrl: 'partials/home.html',
         controller: 'homeCtrl'
      })
      .otherwise({redirectTo:'/'});
}
Run Code Online (Sandbox Code Playgroud)

将所有模板放在partials文件夹中是一个很好的做法,其中father文件夹包含index.html

  root 
     yourAppFolder
       1-Assets
          Css
          Js

       2-Partials
          home.html
          login.html

       3-index.html
Run Code Online (Sandbox Code Playgroud)