首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用AngularJS材料与AngularJS 1.2.20

如何使用AngularJS材料与AngularJS 1.2.20
EN

Stack Overflow用户
提问于 2018-04-10 09:31:02
回答 2查看 911关注 0票数 1

我尝试在我的AngularJS 1.2.20项目中安装最新的快速入门材料版本。(我知道这是旧的,但我不能更新)

代码语言:javascript
复制
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文件的

代码语言:javascript
复制
<!-- Angular Material Library -->
<script src="https://ajax.googleapis.com/ajax/libs/angular_material/1.1.8/angular-material.min.js"></script>

这里是我的angular.module:

代码语言:javascript
复制
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文件的顺序:

代码语言:javascript
复制
<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>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-04-10 17:35:15

正如bower.jsonpackage.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。

票数 1
EN

Stack Overflow用户

发布于 2018-04-10 09:55:07

关于讨论中的注释,我认为您的错误是在加载AngularJS脚本之前声明您的应用程序(和控制器)。

我建议你这样做:

代码语言:javascript
复制
<html>
  <script src="angular.js"></script>
  <script src="app.js"></script>

  <body ng-app="app">
    <div ng-controller="MainCtrl">
    </div>
  </body>
</html>

首先加载AngularJS,然后加载自定义脚本,然后声明应用程序(在视图中),然后声明控制器。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49750126

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档