看了一天的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