我尝试在我的AngularJS 1.2.20项目中安装最新的快速入门材料版本。(我知道这是旧的,但我不能更新)
Failed to instantiate module app due to:
Error: [$injector:modulerr] http://errors.angularjs.org/1.2.20/$injector/modulerr?p0=...
at http://ajax.googleapis.com/ajax/libs/angularjs/1.2.20/angular.min.js:6:450
at http://ajax.googleapis.com/ajax/libs/angularjs/1.2.20/angular.min.js:34:97
at Array.forEach ()
at q (http://ajax.googleapis.com/ajax/libs/angularjs/1.2.20/angular.min.js:7:280)
at e (http://ajax.googleapis.com/ajax/libs/angularjs/1.2.20/angular.min.js:33:207)
at http://ajax.googleapis.com/ajax/libs/angularjs/1.2.20/angular.min.js:33:284
at Array.forEach ()
at q (http://ajax.googleapis.com/ajax/libs/angularjs/1.2.20/angular.min.js:7:280)
at e (http://ajax.googleapis.com/ajax/libs/angularjs/1.2.20/angular.min.js:33:207)
at dc (http://ajax.googleapis.com/ajax/libs/angularjs/1.2.20/angular.min.js:36:309我不知道为什么,但我找不到哪种版本是兼容的.
也许有人有主意了?
这是我如何在<head> 中包含js文件的
<!-- Angular Material Library -->
<script src="https://ajax.googleapis.com/ajax/libs/angular_material/1.1.8/angular-material.min.js"></script>这里是我的angular.module:
var app = angular.module('app', [
'ngMaterial',
'ui.bootstrap',
'ngCookies',
'ngResource',
'ngSanitize',
'ngRoute',
'infinite-scroll',
'rzModule',
'ngReallyClickModule',
'ngVideoCutModule',
'ngVideoTrailerModule',
'ngItemModules',
'ngDirectives',
'xeditable',
'monospaced.elastic',
'angularFileUpload',
'angulartics',
'angulartics.google.analytics',
'angular-video',
'checklist-model',
'ui-notification',
'luegg.directives',
'ngLoadingModule'
]);包括JS文件的顺序:
<script src="/inc/assets/js/modernizr.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery.lazyload/1.9.1/jquery.lazyload.min.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.2.20/angular.min.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.2.20/angular-sanitize.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.2.20/angular-resource.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.2.20/angular-cookies.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.2.20/angular-route.js"></script>
<script src="/inc/js/app/application.js"></script>
<script src="/inc/js/app/app.routes.js"></script>
<script src="/inc/js/app/app.config.js"></script>
<!-- Angular Material Library -->
<script src="https://ajax.googleapis.com/ajax/libs/angular_material/1.1.8/angular-material.min.js"></script>发布于 2018-04-10 17:35:15
正如bower.json和package.json中所指出的,AngularJS 1.4是我们最新版本正式支持的最古老的版本。事实上,推荐使用1.5+。我们很快就会移到1.6点。
请注意,1.2.20是在2014年7月11日发布的,并且缺少许多安全补丁。如果你必须在1.2.x上,你至少应该在1.2.32上,其中包括补丁和安全补丁,并于2016年10月11日发布。
我强烈建议升级到最新的AngularJS 1.6,因为1.7将于今年夏天发布,并将包括LTS。您将希望您的活动项目在LTS上继续进行,因为关键的修补程序和安全补丁将只应用于AngularJS 1.7.x。
发布于 2018-04-10 09:55:07
关于讨论中的注释,我认为您的错误是在加载AngularJS脚本之前声明您的应用程序(和控制器)。
我建议你这样做:
<html>
<script src="angular.js"></script>
<script src="app.js"></script>
<body ng-app="app">
<div ng-controller="MainCtrl">
</div>
</body>
</html>首先加载AngularJS,然后加载自定义脚本,然后声明应用程序(在视图中),然后声明控制器。
https://stackoverflow.com/questions/49750126
复制相似问题