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

新手入门学习angular.js的心得体会的更多相关文章

  1. 人工智能新手入门学习路线和学习资源合集(含AI综述/python/机器学习/深度学习/tensorflow)

    [说在前面]本人博客新手一枚,象牙塔的老白,职业场的小白.以下内容仅为个人见解,欢迎批评指正,不喜勿喷![握手][握手] 1. 分享个人对于人工智能领域的算法综述:如果你想开始学习算法,不妨先了解人工 ...

  2. 学习angular.js的一些笔记想法(上)

    1.data-ng-app与ng-app的区别 data-ng-app是为了h5不报错 2.ng-class 不多说就来拿例子说吧 html代码 <div class='color-change ...

  3. Linux系统新手入门学习的四点建议

    随着计算机的普及.互联网的发展,原本黑客手中的攻城利器---Linux,渐渐进入到普通群众的视线里,让越来越多的人接触到Linux,并学习Linux进而投身到Linux运维工作中去.如果大家对Linu ...

  4. 工作流Activiti新手入门学习路线整理

    写在前面: 最近项目中使用到了工作流,虽然此部分不是自己需要完成的,但是也涉及到了要调用写的接口.正好有时间,就了解下,以便之后能在其他项目中用到时,不至于什么都不知道什么都不了解. 这里就主要整理下 ...

  5. 学习asp.net Identity 心得体会(连接oracle)

    asp.net Identity具体功能暂不在此细说,下面主要介绍几点连接oracle注意的事项, 1.首先下载连接oracle驱动Oracle.ManagedDataAccess.dll和Oracl ...

  6. Python新手入门学习常见错误

    当初学 Python 时,想要弄懂 Python 的错误信息的含义可能有点复杂.这里列出了常见的的一些让你程序 crash 的运行时错误. 1)忘记在 if , elif , else , for , ...

  7. 学习 google file system 心得体会

    Google File system文件系统,是在特别便宜的普通硬件设备上运行,它是一个面向大规模数据密集型运用的.可伸缩的分布式文件系统. 与传统文件相比,它认为组件失效是很平常的事件,因为GFS包 ...

  8. GIT新手入门学习教程

    廖雪峰的GIT教程 链接地址:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

  9. Django:新手入门学习资料汇总

    (1)作者(刘江)(神都公务员出身,军工专家,文章详尽全面):http://www.liujiangblog.com/course/django/2 (2)魔力Python:作者(小楼一夜听春语)(文 ...

随机推荐

  1. swift 2.0 语法 数组

    import UIKit /*: 数组 * 格式 var arr:[Int] = [数值1, 数值2, 数值3] * 不可变数组  let  == NSArray * 可变数组    var */ l ...

  2. HDU 2461 线段树扫描线

    给出N个矩形,M次询问 每次询问给出R个.问这R个矩形围成的面积 经典扫面线求面积并,对每次询问的R个点离散化一下 #include "stdio.h" #include &quo ...

  3. oc69--NSMutableString

    // main.m // NSMutableString基本概念,NSString是不可变字符串,NSMutableString是可变字符串.NSMutableString继承NSString,所以N ...

  4. linux设备驱动模型之Kobject、kobj_type、kset【转】

    本文转载自:http://blog.csdn.net/fengyuwuzu0519/article/details/74838165 版权声明:本文为博主原创文章,转载请注明http://blog.c ...

  5. 把ANSI格式的TXT文件批量转换成UTF-8文件类型

    把ANSI格式的TXT文件批量转换成UTF-8文件类型 Posted on 2010-08-05 10:38 moss_tan_jun 阅读(3635) 评论(0) 编辑 收藏 #region 把AN ...

  6. MAC地址 初识

    MAC地址 即物理地址/硬件地址 地址长度为48位,6字节. 格式为:00-23-5A-15-99-42 一个网卡对应一个MAC地址(比如笔记本,有线网卡有一个MAC地址,无线网卡也有一个MAC地址) ...

  7. PCB SQL SERVER 正则应用实例

    我们用过SQL SERVER的都知道,SQL SERVER它本身是不自带正则表达式的,因为没有,所以基本都没用过啊, 但我们在C#中对文本匹配用正则的方式处理非常好用,省得你写一堆代码实现匹配,多简洁 ...

  8. E20170924-hm

    literal   adj. 照字面的; 原义的; 逐字的; 平实的,避免夸张;   n. [印] 错排,文字上的错误; parameter   n. [数] 参数; <物><数&g ...

  9. androd基础入门---1环境

    1.项目结构特性 2.模拟器设置 3.编译器的下载 直接点击运行即可

  10. 洛谷P1250种树(贪心)

    题目描述 一条街的一边有几座房子.因为环保原因居民想要在路边种些树.路边的地区被分割成块,并被编号成1..N.每个部分为一个单位尺寸大小并最多可种一棵树.每个居民想在门前种些树并指定了三个号码B,E, ...