簡體   English   中英

AngularJS路由功能不起作用

[英]AngularJS Routing Function is not working

我的角路由功能不起作用-有頁面加載,但是沒有'home.html'文件。 這是我的代碼:

Index.html

<html  ng-app="App" class="no-js" lang="en" >
<head>
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-route.min.js"></script>
    <script src="app.js"></script>    
  </head>

  <body ng-cloak> 
  <div ng-controller="main">
      <div ng-view></div>
    </div>
  </body>
</html>

app.js

(function () {
'use strict';

angular
    .module('App', ['ngRoute']) 
    .controller('$routeProvider', router)
    .controller('main', main);

function router($routeProvider) {

    $routeProvider.
          when('/', {
            templateUrl: '_pages/home.html',
            controller: 'main'
          });

};
function main ($scope) {
console.log("done");
}

路由配置是在config中而不是在控制器中完成的。 如下更改代碼:

(function () {
  'use strict';

   angular
    .module('App', ['ngRoute']) 
    .config(router)
    .controller('main', main);

  function router($routeProvider) {

    $routeProvider.
      when('/', {
        templateUrl: '_pages/home.html',
        controller: 'main'
      });

  };

  function main ($scope) {
    console.log("done");
  }
});

Angular $ providers僅在配置狀態下工作。 例如:

angular
.module('App', ['ngRoute']) 
.config(['$routeProvider', router]);
function router($routeProvider) {

    $routeProvider.
      when('/', {
        templateUrl: '_pages/home.html',
        controller: 'main'
      });

};

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM