AngularJS 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
AngularJS 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票

软件简介

Angular JS (Angular.JS) 是一组用来开发 Web 页面的框架、模板以及数据绑定和丰富 UI 组件。它支持整个开发进程,提供 Web 应用的架构,无需进行手工 DOM 操作。 AngularJS 很小,只有 60K,兼容主流浏览器,与 jQuery 配合良好。

数据绑定可能是 AngularJS 最酷最实用的特性。它能够帮助你避免书写大量的初始代码从而节约开发时间。一个典型的 Web 应用可能包含了 80% 的代码用来处理,查询和监听 DOM。数据绑定使得代码更少,你可以专注于你的应用。

传统来说,当 Model 变化了。 开发人员需要手动处理 DOM 元素并且将属性反映到这些变化中。这个一个双向的过程。一方面,Model 变化驱动了 DOM 中元素变化,另一方面,DOM 元素的变化也会影响到 Model。这个在用户互动中更加复杂,因为开发人员需要处理和解析这些互动,然后融合到一个 Model 中,并且更新 View。这是一个手动的复杂过程,当一个应用非常庞大的时候,将会是一件非常费劲的事情。

特性二:模板

在 AngularJS 中,一个模板就是一个 HTML 文件。但是 HTML 的内容扩展了,包含了很多帮助你映射 Model 到 View 的内容。

HTML 模板将会被浏览器解析到 DOM 中。DOM 然后成为 AngularJS 编译器的输入。AngularJS 将会遍历 DOM 模板来生成一些指导,即,directive(指令)。所有的指令都负责针对 View 来设置数据绑定。

我们要理解 AuguarJS 并不把模板当做 String 来操作。输入 AngularJS 的是 DOM 而非 string。数据绑定是 DOM 变化,不是字符串的连接或者 innerHTML 变化。使用 DOM 作为输入,而不是字符串,是 AngularJS 区别于其它的框架的最大原因。使用 DOM 允许你扩展指令词汇并且可以创建你自己的指令,甚至开发可重用的组件。

特性三:MVC

针对客户端应用开发 AngularJS 吸收了传统的 MVC 基本原则。MVC 或者 Model-View-Controll 设计模式针对不同的人可能意味不同的东西。AngularJS 并不执行传统意义上的 MVC,更接近于 MVVM(Model-View-ViewModel)。

特性四:依赖注入(Dependency Injection,即 DI)

AngularJS 拥有内建的依赖注入子系统,可以帮助开发人员更容易的开发,理解和测试应用。

DI 允许你请求你的依赖,而不是自己找寻它们。比如,我们需要一个东西,DI 负责找创建并且提供给我们。

特性五:Directives(指令)

指令是我个人最喜欢的特性。你是不是也希望浏览器可以做点儿有意思的事情?那么 AngularJS 可以做到。
指令可以用来创建自定义的标签。它们可以用来装饰元素或者操作 DOM 属性。

该条目收录的是 1.x 版本,因为官方将 1.x 系列与 Angular 2 及后面的版本分开维护,所以有了这个条目 — Angular

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (46)

加载中
打分: 较差
没有Vue速度快,但是很经典
2018/10/12 21:33
回复
举报
打分: 较差
还可以
2018/10/30 08:52
回复
举报
什么是model?什么是demo?分别代表是是什么?
2018/04/14 10:49
回复
举报
#AngularJS# 2 和 Angular 4 的功能和性能的比较 https://coyee.com/a/12371
2017/08/13 13:53
回复
举报
打分: 力荐
最喜欢它的双向数据绑定了,最近在学
2017/03/09 10:19
回复
举报
这个目前 比jQuery还火?
2017/03/08 08:21
回复
举报
打分: 力荐
好用吗?
2017/01/06 16:03
回复
举报
对web app编码方式有比较大的颠覆,但是很好. Angular JS
2013/06/29 00:46
回复
举报
这玩意看起来很不错呢 Angular JS
2013/07/15 12:57
回复
举报
重口味使用AngularJS Directives, 构建客户端的DSL
2013/12/21 02:25
回复
举报
更多评论
08/21 08:37

AngularJS LTS 将延长 6 个月

Angular 团队宣布,鉴于 COVID-19 疫情的影响,其计划将 AngularJS LTS 延长 6 个月,直至 2021 年 12 月 31 日。 在 2018 年 7 月 1 日,我们进入了 AngularJS 1.8 的长期支持阶段(LTS)。我们最初宣布的是,将在 2021 年 7 月 31 日终止支持。 在过去的几个月中,我们听说全球 COVID-19 的大流行给许多公司造成了空前...

0
1
发表于大前端专区
2019/02/05 07:38

Angular.js 1.7.7 发布,Web 前端框架

Web 前端框架 Angular.js 1.7.7发布了,更新内容如下: Bug 修复 ngRequired: 在ngRepeat内部时正确设置错误,默认情况下设置为false (5ad4f5, #16814, #16820) 更新日志

0
1
发表于大前端专区
2019/01/18 07:43

Angular.js 1.7.6 发布,Web 前端框架

Web 前端框架 Angular.js 1.7.6 发布了,更新内容如下: Bug 修复 $compile: 修复 ng-prop-* 未定义值的问题 (772440, #16797, #16798) compile: 用 JQuery 正确处理 boolean 参数的 false 值 (27486b, #16778, #16779) ngRepeat: fix reference to last collection value remaining across linkages (cf919a) 修复 trac...

3
2
发表于大前端专区
2018/10/06 07:09

Angular.js 1.7.5 发布,Web 前端框架

Angular.js 1.7.5 已发布,这是一个很小的 bug 修复版本: ngClass: do not break on invalid values (f3a565, #16697, #16699) 以往版本更新记录可查阅: https://github.com/angular/angular.js/blob/master/CHANGELOG.md Angular.js 是一组用来开发 Web 页面的框架、模板以及数据绑定和丰富 UI 组件。它支持整个开发进...

0
0
发表于大前端专区
2018/09/08 07:24

Angular.js 1.7.4 发布,Web 前端框架

Angular.js 1.7.4 已发布,包含以下修复更新: ngAria.ngClick: prevent default event on space/enter only for non-interactive elements (61b335, #16664, #16680) ngAnimate: remove the "prepare" classes with multiple structural animations (3105b2, #16681, #16677) $route: correctly extract path params i...

4
0
发表于大前端专区
2018/08/12 07:09

Angular.js 1.7.3 发布,Web 前端框架

Angular.js 1.7.3 已发布。主要更新内容如下: Bug 修复 $location: fix infinite recursion/digest on URLs with special characters (e68697, #16592, #16611) avoid unnecessary $locationChange* events due to empty hash (1144b1, #16632, #16636) ngMock.$httpBackend: pass failed HTTP expectations to $except...

7
3
发表于大前端专区
2018/06/13 07:30

Angular.js 1.7.2 发布,Web 前端框架

Angular.js 1.7.2 已发布。主要更新内容如下: 在之前的版本中,AngularJS 移除了私人、未公开的 API。而一些流行的 UI 库(如 AngularJS Material,UI Bootstrap,ngDialog 等)都依赖于该 API。因此,为了避免开发者不必要的痛苦,这个版本恢复了之前移除的 API,并且恢复了上述库与最新的 AngularJS 的兼容性。 Reve...

8
4
发表于大前端专区
2018/06/09 07:19

Angular.js 1.7.1 发布,Web 前端框架

Angular.js 1.7.1 已发布。主要更新内容如下: Bug 修复 $compile: 支持 transcluding 多元素指令 (789db8,#15554,#15555) ngModel: 如果视图值在销毁范围上发生变化,请不要抛出 (2b6c98,#16583,#16585) 新功能 $compile: 添加单向集合绑定 (f9d1ca,#14039,#16553,#15874) ngRef: 添加指令以将控制器或元素发布到范围中...

1
3
发表于大前端专区
2018/05/12 07:58

Angular.js 1.7.0 发布,Web 前端框架

Angular.js 1.7.0 发布了。1.7.0 是 AngularJS 的最后一个预定版本,包括重大更改。1.7.x 补丁版本将继续更新,直到AngularJS 于 2018 年 7 月 1 日进入长期支持模式(LTS)。 该版本包含部分新功能和大量 Bug 修复,主要更新内容如下: 新功能: angular.isArray: 支持 angular.isArray() 中的 Array 子类(e3ece2,#1553...

4
3
发表于大前端专区
2018/04/24 08:05

Angular 6.0 即将发布,承诺更小更快更易用

本月早些时候,Angular 团队发布了 6.0 的第五版候选版本,其中包括一些错误修复以及添加令牌标记和支持配置导航网址。 根据 Angular 的开发者支持者 Stephen Fluin 的说法,RC 意味着团队已经在一定程度上实现了正式版的稳定性,并且已经完成了添加功能和更改 API。 Fluin 还解释说,该团队有两个发布曲目。 首先,他们...

19
8
发表于大前端专区
2018/04/15 07:50

构建 Web 应用程序的开发平台 Angular 6.0.0-rc.5 发布

Angular 6.0.0-rc.5 发布了。Angular 是一个使用 TypeScript / JavaScript 和其他语言构建移动和桌面 Web 应用程序的开发平台。 官方暂未提供更新内容,您可以查看以下页面保持关注: 发布主页:https://github.com/angular/angular/releases/tag/6.0.0-rc.5 2.2.34 更新页:https://github.com/angular/angular/compar...

5
0
发表于大前端专区
2018/04/13 07:15

构建 Web 应用程序的开发平台 Angular 6.0.0-rc.4 发布

Angular 6.0.0-rc.4 发布了。Angular 是一个使用 TypeScript / JavaScript 和其他语言构建移动和桌面 Web 应用程序的开发平台。 主要更新内容: Bug 修复 bazel: set rollup output.name and amd.id (#23274) (3e8eef6), closes #23238 common: replace i18n locale undefined values by a const (#23265) (5706810), c...

0
1
发表于大前端专区
2018/04/06 06:43

构建 Web 应用程序的开发平台 Angular 6.0.0-rc.2 发布

Angular 6.0.0-rc.2 发布。 Angular 是一个使用 TypeScript / JavaScript 和其他语言构建移动和桌面 Web 应用程序的开发平台。 Bug 修复 common: locales 未起作用。 (#23136) (7ca7720) common: className 变更。 (#21937) (4a42669) compiler-cli: 平面模块索引元数据应该被转换。 (#23129) (f99cb5c) core: inject()...

2
0
发表于大前端专区
2018/03/16 07:05

Angular 5.2.9 发布,Web 前端框架

Angular 5.2.9 已发布。该版本主要带来了一些 Bug 的修复。 主要更新内容如下: platform-server: add styles to elements correctly (#22527) (fc6dfc2) router: correct over-encoding of URL fragment (#22687) (86517f2) 更新详情及往期更新内容请点击这里查看。 下载地址: Source code (zip) Source code (tar.gz)...

3
3
发表于大前端专区
2018/02/16 07:49

2018 年,Angular JS 框架是否还值得学习?

越来越多人对学习开发和搭建自己的网站感兴趣,如果你也是,那么 2018 年将是提高技能理想的一年。我们不妨先从 JavaScript 框架开始,但在这篇文章里谈论得更多的将是 Angular JS。 Angular JS 是一个使用 HTML 和 JavaScript 编写的 Web 前端框架,可用于编写一个页面的 JavaScript 应用,这些应用可以多次使用或稍作调...

6
5
发表于大前端专区
2018/01/31 07:51

AngularJS 将再发布一个重要版本 然后进入长期支持阶段

Angular 团队的早期开成员之一 Pete Bacon Darwin 近日在 Angular 博客公布了一个消息,他说道: 目前团队正在开发 AngularJS 1.7.0,而 1.7 的开发周期将一直持续到 2018 年 6 月 30 日。7 月 1 日起,AngularJS 将进入为期 3 年的长期支持阶段 (LTS)。 Pete Bacon Darwin 表示,团队知道许多开发者仍然在使用 AngularJ...

7
1
发表了资讯
2017/11/25 07:36

Angular.js 1.6.7 发布,Web 前端框架

Angular.js 1.6.7 发布了。主页更新内容如下: Bug 修复 $compile: 用指令名清理特殊字符 (c4003f, #16314, #16278) $location: 不在 HTML5 模式下解码路径中的正斜杠 (e06ebf, #16312) sanitizeUri: 清理包含IDEOGRAPHIC SPACE字符的URI (ddeb1d, #16288) 新功能 $sanitize, $compileProvider, linky: 在链接中添加对...

4
5
发表了资讯
2017/11/02 07:57

Angular 5.0.0 发布,Web 前端框架

Angular 5.0.0 发布了。主要更新内容如下: animations:允许 @ .disabled 属性在没有表达式的情况下工作 (#18713) (2159342) animations: 检测到无效的 CSS 属性时报告错误 (#18718) (409688f), 关闭 #18701 animations: 支持 increment 和递减转换别名 (6f45519) animations: 支持负查询限制值 (86ffacf), closes #192...

34
9
发表了资讯
2017/08/19 07:36

Angular.js 1.6.6 发布,Web 前端框架

Web 前端框架 Angular.js 1.6.6 发布了,更新内容如下: Bug 修复 $httpParamSerializer: 忽略功能 (b51ded, #16133) $resource: 调用 old $ cancelRequest() 时不抛出 (009ebe, #16037) $parse: 不 shallow-watch 计算属性键 (750465) 在计算键中支持常量 (9d6c3f) $http: 如果 Content-Type 不是 application / json 但...

9
1
发表了资讯
2017/07/04 10:31

Angular.js 1.6.5 发布,Web 前端框架

Web 前端框架 Angular.js 1.6.5 发布了,更新内容如下: 新功能 select: 公开控制器中的选择状态信息 $animate: 添加对 customFilter 的支持 $compile: 重载 .component()以接受组件的对象映射 $log: 记录 IE 9 中的所有参数,而不仅仅是前两个 ngMock: 描述未经刷新的 http 请求 性能改进 ngOptions: 防止初始选项重画...

35
14
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表了博客
2018/06/07 14:16

升级 AngularJS 至 Angular

Victor Savkin 大神撰写了一系列文章详细介绍如何升级 AngularJS 应用: NgUpgrade in Depth Upgrade Shell Two Approaches to Upgrading Angular Applications Managing Routers and URL Lazy Loading AngularJS Applications 深入理解 NgUpgrade 原理 Angular 应用由组件树构成,每个组件都拥有一个 注入器,并且应用的...

0
1
发表了博客
2019/03/22 16:41

[Angular] Use Angular components in AngularJS applications with Angular Elements

When migrating AngularJS (v1.x) applications to Angular you have different options. Using Angular Elements is one of them. In this lesson we learn how to integrate an Angular Element into an AngularJS (v1.x) application. We will leverage some features release in the latest AngularJS 1.7.3 that ma...

0
0
发表了博客
2019/02/13 22:23

[Angular] Angular Elements Intro

Make sure install the latest Angular v6 with Angular CLI. Checkout ght Github for the code. 1. Create a new application: ng new elementApp 2. Install @angular/elements package: ng add @angular/elements --project-name=<your_project_name> 3. Generate a component: ng g c course-title 4. Conver the e...

0
0
发表了博客
2018/05/03 19:43

[Angular] Angular CDK Intro

1. Installl latest @angular/cli: sudo npm i -g @angular/cli@next The version I used is:6.0.0-rc.10 2. Create a new application: ng new cdk-demo --routing 3. Install material and cdk packages: Here need to add @next, because by the time I tried the application, v6 angular is not released yet. npm ...

0
0
发表了博客
2018/08/02 20:15

AngularJS参数绑定 --AngularJS

AngularJS参数绑定有三种方式。第一种插值表达式“{{}}”表示,第二种在标签中使用ng-bind属性表示,第三种针对input框(标签)的ng-module属性表示。针对三种参数绑定方式,设定了以下三个小案例。 1、插值表达式 案例核心代码: demo01.html: <!DOCTYPE html> <html lang="en" ng-app="myapp"> <head> <meta ch...

0
0
发表于大前端专区
2015/07/10 16:49

AngularJs

AngularJS 是一个 JavaScript 框架。它是一个以 JavaScript 编写的库。它可通过

0
0
发表了博客
2018/01/03 21:00

angular

http://blog.csdn.net/shenlei19911210/article/details/51325707 ui-router文章 http://blog.csdn.net/huinsysu/article/details/51786822 非常好的ui-router文章,有小实例! https://www.jianshu.com/p/cba3fa12f0a3 angular CLI https://www.jianshu.com/p/327d88284abb Angular CLI 安装和使用 angular只能做跟数据...

0
0
发表了博客
2015/04/22 17:05

angularjs

angularjs 实战总结

0
0
发表了博客
2018/04/11 18:29

AngularJS VS Angular(转)

---恢复内容开始--- 原文链接:https://zhuanlan.zhihu.com/p/27696268 这篇是在知乎上看到的, 原文链接附上。觉得很不错, 就自己抄过来了。 AngularJS最大版本号只有1.x, 2.x/4.x的版本号都是针对于全新的框架Angular。但是也不能说Angular 和 AngularJS 一点关系都没有。 提一下AngularJS 的特性:双向数据绑定,MVC...

0
1
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表了问答
2016/11/25 10:30

拖放html页面生成工具

现有需要做一个通过拖放生成页面的工具, 要求提供一些简单的模板(布局)和组件,比如表单,轮播,header,footer等。 让无技术基础的人使用拖放生成想要的页面布局,同时可以设置样式,总之尽量做得灵活。 问:1要求所生成的页面如何存储,数据结构如何(DB存html,还是分开存json等)?才能方便下次继续? 2 市面上...

8
0
发表了问答
2014/10/12 09:02

angular.js使用路由时,子控制器监听不到父级$boardcast的事件

求解!! 如下code, test01Controller控制器中的的变量可以$emit到父控制器(mainController)中,父控制器也可以$on监听到事件,但是,父控制器中$boardcast事件时,子控制器却不可以$on监听到事件。 controller.js angular.module('mainApp', ['ngRoute']).config([ '$routeProvider', function($routeProvider) { ...

1
0
发表了问答
2019/06/25 10:13

开发者简报第七期

每个人开发者都是由初级一步一步走向高级工程师。当然,不是说工作了多少年就能称为一名合格的高级软件工程师。有可能和你一同学习的人一两年的时间就拉开了距离。究其原因,我个人看法,有以下几点: 好学:别人下班放学挤地铁都在学习,你在上网看视频玩游戏 天分:这个很难超越,有些人他天生就属于这个行业,对于技术...

2
9
发表于大前端专区
2019/03/27 13:45

angular

@葬天尘 你好,想跟你请教个问题:您好!请问,<input nz-input [(ngModel)]="value" />这里如何设置默认值为当前日期啊?谢谢!

1
0
发表于大前端专区
2019/02/12 17:31

前端学习路线

对前端的学习道路有点蒙,哪位大神可以说一下

3
0
发表了问答
2016/09/07 14:53

ng-bind-html不生效

有一段html代码,里面有字体大小,颜色,倾斜度的设置,但是使用ng-bind-html绑定在文本域中没有效果,我已引用了ngSanitize模块。请问这是怎么回事?

1
0
发表于大前端专区
2018/11/21 18:49

bootstrap datepicker控制日期选择

页面点击按钮弹出模态框如下图所示: 第一次选择日期,开始日期、结束日期选择如图所示;选择完后直接关闭模态框,再次点击按钮弹出模态框,点击开始日期输入框弹出日期面板会高亮显示上次选择的日期,且由于上次选择的结束日期为22,故22之后的无法选择;结束日期同理,由于上次选择的开始日期为20,故20之前的日期无法...

1
0
发表了问答
2014/08/24 14:03

IONIC+AngularJS 动态插入幻灯片图片

请教一个关于动态插入幻灯片图片的问题 目前在使用ionic+angular做开发,页面中使用了<ion-slide-box></ion-slide-box>做幻灯片,然后ajax获得图片链接异步插入到<ion-slide-box>中,但是插入的图片不能组成幻灯片,而是全部显示在页面上了,请问这个问题怎么处理?...

3
2
2018/07/10 14:05

angularjs实现Excel导出

1、controller.js hkdd.excel=function(){ var hkkds={ headers: { 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'}, "zt": hkdd.searchForm.hkzt, "realname":hkdd.searchForm.realname }; hkdd_service.excelport(hkkds).then(function(res){ hkdd.list=res.list; hkdd.searchForm=res.page; }...

2
0
发表于大前端专区
2018/07/02 19:27

结果是js内存泄露,但过程不是稳定的线性增长,会是什么原因?

运行一个脚本,使得浏览器中网页反复运行一段逻辑,1个半小时js heap会达到600M+,但1个小时的时候仅有30M+,在我看来的这个内存泄露是非线性的增长,会是什么问题?chrome的bug?是用的是49版本的chrome

1
1
发表了问答
2016/08/15 10:27

ionic项目中怎么进行用图片代替checkbox

如上面的图,我怎样选择一个或多个??选中的时候,不改变图片,可以只是改变背景色

3
0
发表于大前端专区
2018/04/23 19:11

Angular2中如何在插件的异步操作中返回Observable?

如图,微信公众号jssdk执行的异步操作之后,如何返回Observable呢?

1
0
发表于大前端专区
2018/04/18 21:10

Angular2中如何处理多个http请求的结果?

比如有多个http请求: this.http.get(url1).subscribe(res1=>console.log(res1)) this.http.get(url2).subscribe(res2=>console.log(res2)) this.http.get(url3).subscribe(res3=>console.log(res3)) 请问es6/rxjs中有没有什么写法可以等待三个请求结束,然后再进行处理呢? 我在网上找了好几个方案,试了一下都不好使 le...

1
0
发表了问答
2016/12/12 16:47

AngularJS && HighCharts

项目中出现这样的问题: 有按钮控制切换显示柱状图($scope.shape="column")或线状图($scope.shape="line") 另有下拉框触发事件,切换HighCharts图形中的series,比如显示今天或者明天的数据(通过JS的splice方法)!但是再点击其他按钮(比如上面的切换线状或柱状图),series会还原到点击之前,怀疑是$scope的作用域...

1
0
2018/04/04 10:39

模板框架选用问题

近段时间在学习 Spring boot 。它将传统的 jsp 抛弃了 引用的新的模板技术 thymeleaf 引入了一堆新的标签库。这是问题背景 在对比他们是的时候我发现除了标签库之外在使用上它们是没有区别的(不包括编译问题),像我这种 前端基本都是 jquery 来修改 dom 节点的。标签库这种东西对我的影响不是很大。。。 那么我在使用它...

17
0
发表于大前端专区
2018/04/10 21:28

在使用Angular的时候如何避免破坏html结构?

类似这样的代码: <div class="weui-cells lists"> <div class="weui-cell"> <div class="weui-cell__bd "> <p>姓名:</p> </div> <div class="weui-cell__ft">王xx</div> </div> <div class="weui-cell"> <div class="weui-cell__bd...

1
0
发表于大前端专区
2018/04/08 00:05

Angular5表单校验的问题

运行时报错: ERROR TypeError: Cannot read property 'invalid' of undefined at Object.eval [as updateDirectives] (EditMemberComponent.html:9) 去掉flag就好了,请问该如何解决?...

1
0
发表于大前端专区
2018/04/01 17:34

angular中http返回值如何指定类型?

1
0
发表于开发技能专区
2018/03/29 22:02

WebSocket如何穿透Ngrok,或者取消?

请问我在用Angular5开发微信端时,需要在微信Web开发者工具上面调试,但是angular开发时候需要websocket动态刷新页面,请问大家都是如何解决的呢?

1
1
发表于大前端专区
2018/01/09 10:51

在angular2中引用ztree的问题

@zTree ,你好,在angular项目中引用ztree,只能显示树数据,却不能使用ztree的各种事件,这是什么原因呢?连ztree基础的CheckBox都不能实现,这是什么原因呢~谢谢~

1
1
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
46 评论
1.3K 收藏
分享
返回顶部
顶部