Javascript 未找到路由提供AngularJs

Javascript 未找到路由提供AngularJs,javascript,jquery,angularjs,angularjs-directive,angularjs-routing,Javascript,Jquery,Angularjs,Angularjs Directive,Angularjs Routing,我只是想学习Angular.Js,却被困在这里看教程。 我刚刚用以下代码创建了一个演示应用程序。。。我得到了一个关于以下错误的答案。任何帮助都将不胜感激 Error: [$injector:modulerr] Failed to instantiate module demoApp due to: [$injector:unpr] Unknown provider: $routeProvider <!doctype html> <html lan

我只是想学习Angular.Js,却被困在这里看教程。 我刚刚用以下代码创建了一个演示应用程序。。。我得到了一个关于以下错误的答案。任何帮助都将不胜感激

   Error: [$injector:modulerr] Failed to instantiate module demoApp due to:        [$injector:unpr] Unknown provider: $routeProvider



   <!doctype html>
<html lang="en" data-ng-app="demoApp">
<head>

  <meta charset="utf-8">
  <title>My HTML File</title>
  <link rel="stylesheet" href="css/app.css">
  <link rel="stylesheet" href="css/bootstrap.css">


</head>
<body>

<!-- Placeholder for views -->

  <div>
    <div data-ng-view=""> </div>
  </div>

<script src="lib/angular/angular.js"></script>
<script src="lib/angular/angular-route.js"></script>

<script>

  var demoApp = angular.module('demoApp',[]);

  demoApp.config(function ($routeProvider){
    $routeProvider
    .when('/',
      {
        controller: 'SimpleController', 
        templateUrl: 'partials/view1.html'
      })
    .when('/view2',
      {
        controller: 'SimpleController',
        templateUrl: 'partials/view2.html' 
      })
    .otherwise({
      redirectTo: '/'
    })
  });



  function SimpleController($scope)
  {
    $scope.customers=[
      {name:'AB',city:'Glasgow', cash:20},
      {name:'CD',city:'United States', cash:30},
      {name:'EF',city:'India', cash:40}
    ];

    $scope.addCustomer = function (){
      $scope.customers.push({
        name: $scope.newCustomer.name,
        city: $scope.newCustomer.city,
        cash: $scope.newCustomer.cash
      });
    };

  }


  demoApp.controller('SimpleController', SimpleController);

</script>

</body>

</html>
view1.html

<div class="container">

    <h2>View1</h2>
    </br>
    Name: 
    <br/>
    <input type="text" data-ng-model="filter.name" />
    </br>
    <ul>
        <li data-ng-repeat="cust in customers | filter:filter.name"> {{ cust.name }} - {{ cust.city }} - {{ cust.cash | currency:{£} }} </li>
    </ul>

    </br>
    Customer name: </br>
    <input type="text" dta-ng-model="newCustomer.name" />
    </br>

    City: </br>
    <input type="text" data-ng-model="newCustomer.city" /> 
    </br>

    Cash: </br>
    <input type="text" data-ng-model="newCustomer.cash" />
    </br>

    <button type="button" data-ng-click="addCustomer()" value="Add Customer" />
    <a href="#/view2">View 2</a>
</div>

谢谢你的修复@charlietfi。Angular 1.2及以上版本中,将路由注入demoApp的语法为:

<script>

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

...

在模块中添加路由依赖性

var demoApp = angular.module('demoApp',['ngRoute']);
还包括angular-route.js

<script type="text/javascript" src="angular-route.js"></script>

如果使用外部非核心模块,则需要在创建主模块时将它们作为依赖项添加到空阵列中。我看到你有正在加载的路由js…如果是外部模块,需要将其作为dependency@charlietfl伟大的这就解决了问题。是的,他们将路由比特从1.0.8到1.2之间的某个核心中分离出来。切换到1.0.8也可以解决问题,但我认为保留1.2分支是一个好主意,因为它现在似乎接近发布。