看了一天的angular.js,只要记住这是关于双向数据绑定 和单向数据绑定就可以,看看开发文档,短时间内还是可以直接入手的,看个人理解能力(我是小白)。

这几天开始着手学习angularjs的有关知识,将一些心得总结如下:

(一)为了使用Angular,所有应用必须首先做两件事情:

1.加载angular.js库。

既可以从外部调用,如:

<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"> </script>

也可以在本地放入angular.js。

2.使用ng-app指令告诉angular应该管理DOM的哪一部分

(二)MVC风格

1.控制器就是你所编写的类或者类型,它的作用是告诉angular该模型是由哪些对象或者基本数据构成的,只要把这些对象或者基本数据设置到

$scope对象上即可,$scope对象会被传递给控制器:如下

<html ng-app='myApp'>

<body ng-controller="TextController">

<p>{{someText.message}}</p>

<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js">

</script>

<script>

var myAppModule = angular.module('myApp',[ ]);

myAppModule.controller('TextController',

function ($scope){

var someText = {};

sometText.,message = "First data !";

$scope.someText =sometText;});

</script>

</body>

</html>

2.区分UI和控制器的职责

在应用中控制器有三种职责:

(1)为应用中的模型设置初始状态。

(2)通过$scope对象把数据模型和函数暴露给视图(UI模板)。

(3)监视模型其余部分的变化,并采取相应的动作。

为了让控制器保持小巧和可管理状态,建议,为视图中的每一块功能区域创建一个控制器。控制器是绑定在特定的DOM片段上的,

这些片段就是它们需要负责管理的内容。

(三)依赖注入

这个原理简单归纳如下:

高层次模块不应该依赖低层次模块,他们应该依赖于一种抽象。这种抽象不应该依赖细节,细节应该依赖于抽象 。

我只要指出我需要哪些对象,然后就会有人把这个对象给我,而这个“人”可能是一个应用框架(Framework),也可能是测试

容器(Test Runner),我不会关心它是谁,也不用关心它怎么得到这个对象。这个“人”,专业的说法叫“容器”。在Angular中,

所有主要编程元素都需要通过某种方式注册进去,比如myModule.service('serviceName',function()...这实际上就是把后面这个

函数加入到一个容器中。要注意的是,angular全面实现了延迟初始化,也就是说,当这个对象没有被人需要时,它是不会被创建

的,这样对于提高性能有一定的帮助,特别是加快了启动速度。

原文:https://blog.csdn.net/sweety815/article/details/51251373

最新文章

  1. Facebook开源动画库 POP-POPBasicAnimation运用
  2. C# 毕业证书打印《六》
  3. HTTP请求报文与响应报文
  4. android小结
  5. HBase开发错误记录(一):java.net.UnknownHostException: unknown host: master
  6. 我的第一个python web开发框架(31)——定制ORM(七)
  7. node js 爬虫爬取静态页面,
  8. 【转】Android-Input 按键字符映射文件&amp;输入设备配置文件
  9. python shell与反弹shell
  10. grid 用于同一用例在不同测试环境下的测试结果
  11. solr7.4 安装与使用
  12. mfc 动态为控件添加事件2
  13. effective c++ 笔记 (13-17)
  14. [MyBean说明书]-如何制作BPL插件
  15. TensorFlow指定GPU使用及监控GPU占用情况
  16. Flutter - 创建侧滑菜单
  17. 在JS数组指定位置插入元素
  18. 算法笔记_112:第五届蓝桥杯软件类省赛真题(Java本科B组)试题解答
  19. 使用IntelliJ IDEA开发Spring MVC HelloWorld
  20. 数据结构——堆(Heap)大根堆、小根堆

热门文章

  1. js 实现二叉排序树
  2. Codesys——TON和TOF的使用方法
  3. linux下查看一个文件的属性(ls,lsattr,file,stat)
  4. linux安装 pip和setuptools
  5. 8.4 IP地址的划分及子网划分
  6. Linux运维人员-服务器组成硬件基础
  7. skiing 暴力搜索 + 动态规划
  8. MFC学习篇(一):用OpenCV显示视频
  9. IIS Express 错误提示汇总
  10. Linq学习(四)-联合查询