AngularJS 1.4.8$injector:Modulerr模块错误

AngularJS 1.4.8 $injector:Modulerr Module Error

本文关键字:Modulerr 模块 错误 injector AngularJS      更新时间:2023-09-26

我对AngularJS相对较新,收到一个"未捕获错误:[$injector:modulerr]"。此外,我在各种js文件的第一行遇到了一些语法错误。

错误屏幕截图

错误链路

我似乎无法补救这种情况,有什么想法吗?

index.html

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>User CRM</title>
  <!-- FOR ANGULAR ROUTING -->
  <base href="/">
  <!-- CSS -->
  <!-- load bootstrap from CDN and custom CSS -->
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/animate.css/3.4.0/animate.min.css">
  <link rel="stylesheet" href="public/assets/css/style.css">
  <!-- JS -->
  <!-- load angular and angular-route via CDN -->
  <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.8/angular.min.js"></script>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.8/angular-route.min.js"></script>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.8/angular-animate.js"></script>
  <!-- controllers -->
  <script src="public/app/controllers/mainCtrl.js"></script>
  <script src="public/app/controllers/userCtrl.js"></script>
  <!-- services -->
  <script src="public/app/services/authService.js"></script>
  <script src="public/app/services/userService.js"></script>
  <!-- main Angular app files -->
  <script src="public/app/app.js"></script>
  <script src="public/app/app.routes.js"></script>
</head>
<body ng-app="userApp" ng-controller="mainController as main">
  <!-- NAVBAR -->
  <header>
    <div class = "navbar navbar-inverse" ng-if="main.loggedIn">
      <div class="container">
        <div class="navbar-header">
          <a href="/" class="navbar-brand"><span class="glyphicon glyphicon-fire text-danger"></span> User CRM</a>
        </div>
        <ul class="nav navbar-nav">
          <li><a href="/users"><span class="glyphicon glyphicon-user"></span> Users</a></li>
        </ul>
        <ul class="nav navbar-nav navbar-right">
          <li ng-if="!main.loggedIn"><a href="/login">Login</a></li>
          <li ng-if="main.loggedIn" class="navbar-text">Hello {{ main.user.name }}!</li>
          <li ng-if="main.loggedIn"><a href="#" ng-click="main.doLogout()">Logout</a></li>
        </ul>
      </div>
    </div>
  </header>
  <main class="container">
    <!-- ANGULAR VIEWS -->
    <div ng-view></div>
  </main>
</body>
</html>

app.js

angular.module('userApp', [
  'ngAnimate', // add animations to our Angular Directives
  'app.routes', // routing for our application
  'authService', // service file
  'mainCtrl', // main view controller
  'userCtrl', // controller for user management pages
  'userService' //service file
]);

app.routes.js

angular.module('app.routes', ['ngRoute'])
.config(function($routeProvider, $locationProvider) {
  $routeProvider
  // home page route
  .when('/', {
    templateUrl: 'app/views/pages/home.html'
  })
  // login page
  .when('/login', {
    templateUrl: 'app/views/pages/login.html',
    controller: 'mainController',
    controllerAs: 'login'
  })
  // get rid of the hash in the URL
  $locationProvider.html5Mode(true);
});

尝试使用角度动画模块的更新版本。

如果您通过CDN加载脚本,v1.4.8版的AngularJS文档提供了一些选项。例如,试试这个:https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-animate.js

我加载了angular.js模块,而不是缩小版,以获得更详细的错误消息,并收到未定义userApp的错误通知。事实证明,问题在于没有正确定义其他依赖项。因此,我删除了除ngAnimate和app.routes之外的所有依赖项,并从index.html文件中删除了ng控制器"mainController as main"。这似乎已经解决了问题,但是,现在我需要在mainCtrl.js文件中找到我的错误,这样我就可以使用mainController了。

谢谢你的帮助!