1.angularjs的下载地址为:https://angularjs.org

2.什么是angularsjs????angularjs是对HTML的扩展,吸收了传统的MVC基本原则,将管理数据的模型(model),应用逻辑代码(controller),以及向用户展示数据的代码(view)清晰的分开,从而解决静态网页技术构建动态应用的不足,同时省去了一些繁琐的DOM操作及事件监听操作。

3.angularjs的主要特征:

1)数据绑定:简单来说就是UI的某个部分与JavaScript某些属性之间的互相映射。在传统情况下,我们需要手动的去修改dom,进而将这些变化展示出来,而当实现数据绑定后,界面的操作能实时的反应到数据,数据的变更能实时的反应到界面展现上。

2)依赖注入:在上例中,SomeController可以获取它所需要的$scope的对象,而不需要创建它。当然,我们也可以自定义一些服务,注入到需要使用的控制器中。总之,我们的类只需要简单的获取它所需要的东西,而不需要创建它所依赖的东西。这里需要强调的是,依赖注入需按照上面的形式规则,避免代码压缩产生错误。

3)指令:是angularjs最强大的功能之一,是对html扩展的核心部分,上例中的{{}},ngController都属于指令,{{}}实现的是数据绑定,ngController实现的是控制器对视图的控制。angularjs内置了很多指令,帮我们定义视图,同时我们也可以自定义指令,实现所需的功能。

<!DOCTYPE html>
<html ng-app="myTest">
<head>
<meta charset="utf-8">
<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script>
</head>
<body><div ng-controller="SomeController"><hello></hello>   //<hello>为我们创建的指令</div><script>var myTest = angular.module("myTest", []);myTest.directive("hello", function() {return {restrict: "E",template: "<h1>Hello world!</h1>",replace: true};});</script>
</body>
</html>

4)过滤器(filter):通过某种规则处理接收到的值,最后返回处理后的结果。内置的过滤器有:currency(货币),date(日期),json(格式化json对象),lowercase(小写),uppercase(大写),limitTo(限制个数),number(格式化数字),orderBy(排序),filter(匹配子串)。同时,我们也可以根据需要自定义过滤器。

5)路由(route):将控制器、视图模板及浏览器当前地址栏信息进行深层链接。在应用中,可以通过调用$routeProvider服务上的函数来创建路由,把需要创建的路由当成一个配置块传给这些函数即可。也正因为路由的存在,我们不会将所有的东西都放在一个主视图中,而是创建一个布局模块,然后再用这个模块容纳其他东西,同时ng-view指令告诉angular将视图显示在哪。在实际的开发中,很少用到angular的内置路由ngRoute,而是使用基于ngRoute开发的第三方路由模块ui.router,在这里分享两篇文章

1.http://www.html-js.com/article/Front-end-source-code-analysis-original-uirouter-source-code-analysis

2.http://www.cnblogs.com/liulangmao/p/4155015.html

转载于:https://www.cnblogs.com/webliu/p/5233375.html

angularjs(1)相关推荐

  1. AngularJS和DataModel

    通常,在AngularJS中使用JSON作为存储数据的模型.我们可能这样在controller中写model: app.controller('BookController',['$scope',fu ...

  2. AngularJS 杂项知识点

    1.要用ngChange要同时使用ngModel,下拉选择获取当前选中值. 2.打包代替动态加载(js文件) requirejs真正的价值在于模块化,不是动态加载,angularjs本身有模块化机制, ...

  3. angularjs post 跨域

    web api搞好了:用Ajax妥妥的:但是前端用的AngulagJS,也懒得再换为Ajax了: 但是问题来了:提示: 已拦截跨源请求:同源策略禁止读取位于 http://x.x.x.x:port/a ...

  4. AngularJS 指令

    1. AngularJS指令的特点: AngularJS通过被称为指令的新属性来扩展HTML,指令的前缀为ng-. AngularJS通过内置的指令来为应用添加功能. AngularJS允许你自定义指 ...

  5. AngularJS中的按需加载ocLazyLoad

    欢迎大家讨论与指导 : ) 初学者,有不足的地方希望各位指出 一.前言 ocLoayLoad是AngularJS的模块按需加载器.一般在小型项目里,首次加载页面就下载好所有的资源没有什么大问题.但是当 ...

  6. 【12】AngularJS 事件

    AngularJS 事件 AngularJS 有自己的 HTML 事件指令. ng-click 指令 ng-click 指令定义了 AngularJS 点击事件. <div ng-app=&qu ...

  7. Angular的ChangeDetectorRef.detectChanges()实现angularJS的$apply()方法,强制刷新数据渲染

    在Javascript代码里,都是按照一定顺序来执行的,当轮到一个代码片段执行的时候,浏览器就只会去执行当前的片段,不会做任何其他的事情.所以有时候一些做得不是很好的网页,当点击了某个东西之后会卡住, ...

  8. AngularJS学习笔记(3)——通过Ajax获取JSON数据

    通过Ajax获取JSON数据 以我之前写的与用户交互的动态清单列表为例,使用JSON前todo.html代码如下: <!DOCTYPE html> <html ng-app=&quo ...

  9. angularjs 学习笔记 简单基础

    angularjs是谷歌公司的一个项目,弥补了hml在构建方面的不足,通过指令(directive)来扩展html标签,可以使开发者使用html来声明动态内容. angularjs主要用来开发单页应用 ...

  10. Angularjs集成第三方js插件之Uploadify

    有时候需要用一些第三方插件,比如datepicker,slider,或者tree等.以前的做法是直接通过jquery取得某个元素,然后调用某个方法即可.但在angularjs中,不能直接这么写,必须写 ...

最新文章

  1. [Flash开发笔记] 关于Flash中的ASO文件
  2. 转载sunboy_2050 - Android APK反编译详解(附图)
  3. arduino byte转string_Java数组转List集合的三驾马车
  4. 《DSP using MATLAB 》示例Example6.3
  5. mysql 乘法_测试面试题集Python花式打印九九乘法口诀表
  6. 32 引脚_函数功能:定时器T0的中断服务子程序,使P3.7引脚输出音频方波
  7. 【熊猫多模式站群开发日志】 优化了关键词调度和模板调度
  8. 魅族预热魅族18系列:没有中杯 大杯起步
  9. iPhone 12或于7月开始量产,售价4615元起
  10. 问题 H: 编写函数:求数组中的最大值 (Append Code)
  11. 编译安装NTP时间服务报错
  12. java中this什么时候不能省略?this()的用法
  13. dell 笔记本禁用触摸板方法
  14. vue中利用高德地图选取经纬度
  15. qq互联代码 php,请教QQ互联的代码是如何写的?
  16. 【OR】二次规划(1)
  17. 【操作系统】Linux内核和Windows系统的内核有什么区别?
  18. NSIS ERROR解决方法
  19. LabVIEW的for循环事例
  20. 全球疫情来袭,瑞士科学家在实验室重造冠状病毒?

热门文章

  1. 网站建设需要遵守的三大原则!
  2. 网站SEO优化该如何选择适合的关键词优化?
  3. java统计 pv uv_统计PV、UV的新武器——Aviator
  4. 趣谈网络协议笔记-二(第十二讲)
  5. 读书笔记 《Perl语言入门》 Day 1
  6. 开发日记-20190621 关键词 读书笔记《鸟哥的Linux私房菜-基础学习篇》
  7. 开发日记-20190425 关键词 gradle基础学习 7年之约 启动篇
  8. android从放弃到精通 第八天 freedom
  9. DNS RR代码和含义
  10. IOS-React-Native:No bundle URL present