AngularJS错误:[$ injector:modulerr]

时间:2016-08-13 11:06:25

标签: angularjs

我在浏览器中收到此错误“

  

错误:[$ injector:modulerr] http://errors.angularjs.org/1.5.8/ $ injector> / modulerr?

我的脚本app.js

    var sampleApp = angular.module('myApp',[]).config(function($routeProvider){
    $routeProvider.
        when('/AddNewOrder',{
             templateUrl:'view/add_order.html',
             controller:'addOrderController'
    }).
        when('/ShowOrders',{
            templateUrl:'view/show_order.html',
             controller:'addOrderController'
    }).
            otherwise({redirectTo:'/AddNewOrder'
    });
});


`SampleApp.controller('myCtrl',function($scope,$location){
       $scope.setRoute = function(route){
           $location.path(route);
});`

HTML代码

    <!DOCTYPE html>
<html lang="en" data-ng-app="myApp">
  <head>

    <title>AngularJS Routing example</title>

    <link href="css/bootstrap.min.css" rel="stylesheet">

    <style>
        body {
          padding-top: 10px;
          background-color: #F5F5F5;
        }
    </style>

    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
    <!--[if lt IE 9]>
      <script src="../../assets/js/html5shiv.js"></script>
      <script src="../../assets/js/respond.min.js"></script>
    <![endif]-->
  </head>

  <body data-ng-controller="myCtrl">

    <div class="container">
        <div class="row">
        <div class="col-md-3">
           <ul class="nav">
                <li><a data-ng-click="setRoute('AddNewOrder')"> Add New Order </a></li>
                <li><a data-ng-click="setRoute('ShowOrders')"> Show Order </a></li>
            </ul>
        </div>
        <div class="col-md-9">
            <div data-ng-view></div>
        </div>

        </div>

    </div><!-- /.container -->

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

  </body>
</html>

不要为什么会出现这个错误。需要你的建议来解决这个问题。

1 个答案:

答案 0 :(得分:2)

<强>更新

我查看了你的堆栈跟踪,看起来你正在从文件夹路径直接加载JavaScript文件,它要求使用file协议的文件。要解决此问题,您必须在IIS,Lamp,Wamp等(任何服务器)等服务器上托管您的文件/文件夹。然后从托管链接(http://localhost:8080/index.html

访问html

虽然如果你不想托管文件,你可以启用直接文件访问,你可以参考[这个答案]( How to launch html using Chrome at "--allow-file-access-from-files" mode?

您应该在ngRoute模块中注入myApp模块,因为路由API没有提供angular.js开箱即用的功能。 angular-route.js中已将其API保存在ngRoute模块中。基本上,只要您想使用Routeing API,就应该在应用程序模块中注入ngRoute。我要确定的另一件事是,angular-route-min.js(我想你在js/route.min.js通过重命名它已经加载了)正确加载或不加载。

var sampleApp = angular.module('myApp',['ngRoute'])