当前位置: 首页 > 面试题库 >

Angularjs未捕获的错误:迁移到V1.3时出现[$ injector:modulerr]

李俭
2023-03-14
问题内容

我正在学习Angular.js,但无法弄清楚此简单代码有什么问题。看起来不错,但出现以下错误。

**Error**: Uncaught Error: [$injector:modulerr] http://errors.angularjs.org/1.3.14/$injector/modulerr?p0=app&p1=Error%3A%20…gleapis.com%2Fajax%2Flibs%2Fangularjs%2F1.3.14%2Fangular.min.js%3A17%3A381)

在添加之前(我只是保持原样),它给了我以下错误。这是为什么?ng-app= **"app"**``ng-app

Error: [ng:areq] http://errors.angularjs.org/1.3.14/ng/areq?p0=Ctrl&p1=not%20a%20function%2C%20got%20undefined
    at Error (native)
    at https://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js:6:417
    at Sb (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js:19:510)
    at tb (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js:20:78)
    at $get (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js:75:331)
    at https://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js:57:65
    at s (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js:7:408)
    at A (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js:56:443)
    at g (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js:51:299)
    at g (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js:51:316)



<!doctype html>
    <html ng-app="app">
      <head>
        <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js"></script>

      </head>
      <body>
        <div ng-controller="Ctrl">
          <input ng-model="name">
          <h1>{{name}}</h1>
          <h2>{{age}}</h2>
        </div>

         <script>
          var Ctrl = function($scope)
           {
              $scope.age = 24;
           };
          </script>


      </body>
    </html>

问题答案:

禁用AngularJS 1.3版全局控制器功能声明后

您需要首先创建一个AngularJS模块,然后将所有组件附加到该特定模块。

function Ctrl($scope) {
    $scope.age = 24;
}

angular.module('app', [])
    .controller('Ctrl', ['$scope', Ctrl]);

专门针对您的情况,AngularJS存在一些问题 1.3.14 (将其降级为 1.3.13 正常)。虽然我希望您使用
angular 1.2.27 AngularJS 1.6.X,这是AngularJS的更稳定版本和最新版本。

更新:

您可以通过在其中允许全局控制器声明来将当前代码设置为工作状态angular.config。但这不是运行角度应用程序的正确方法。

function Ctrl($scope) {
    $scope.age = 24;
}

angular.module('app', [])
    .config(['$controllerProvider',
        function ($controllerProvider) {
            $controllerProvider.allowGlobals();
        }
    ]);


 类似资料:
  • 当我尝试启动我的应用程序时,我的 MainActivity 在 oncreate() 方法中的“setContentView(R.layout.activity_main);” 中抛出此错误: 这个错误出现在迁移到androidx之后,经过进一步检查,我注意到Bottomnavigationview类中的导入语句已经过时(没有androidx格式,而是旧格式)。Bottomnavigationvi

  • 从2.1.0迁移的Springboot版本2.2.1

  • 我正在使用Android Studio 3.2 Canary 14,并试图迁移现有项目以使用AndroidX。从https://developer.android.com/topic/libraries/support-library/androidx-rn听起来,我必须设置(这是在选择“重构到AndroidX…”选项时自动完成的)。我还将目标API级别更新为28。还有人看到这个问题吗? 未能转换

  • 问题内容: 我有一个相当简单的Angular应用程序,可以在我的开发机上正常运行,但是在部署它后却出现此错误消息(在浏览器控制台中)失败: 除此之外,没有其他消息。页面首次加载时会发生这种情况。 我正在运行ASP.NET MVC5,Angular 1.2RC3,并通过git推送到Azure。 谷歌搜索还没有发现任何有趣的东西。 有什么建议? 编辑: 我正在使用TypeScript,并用该变量定义依

  • 在我的Node.js应用程序的测试中,让Chai的 工作时遇到了问题。测试在抛出的错误上不断失败,但是如果我将测试用例包装在try和catch中,并在捕获的错误上断言,它就会工作。 不像我认为的那样工作吗? 失败:

  • 你能帮助我们哪里错了或者需要做什么吗… 提前感谢…