AngularJS初步
AngularJS特点
- 遵循AMD规范
- 不需要操作节点
- 对于jquery,一般是利用现有完整的DOM,然后在这戏Dom的基础上进行二次调教了;而对于AngularJS等框架则是根据数据模型以及其对应用dom模板,而后通过模板类似于搭积木那样组合页面。
- 不适合频繁dom操作的应用。
{{}} Angular的表达式
借鉴mvc理念;仅仅只是借鉴,区别在于控制C,Angular弱化了控制器
- mvvm
- vm:viewModel,$scope 是一个对象
- 官方解释 mvw
- w:whatever,$scope 是什么都无所谓,都可以
- mvvm
<html ng-app>
最早是由backbone提出该理念,但封装不够彻底
ng-model 双向绑定,只有能在页面下可操作的标签才能双向保定 ##原理
$watch
- 监听列表
- 页面上所有绑定到页面上的{{}}、ng-model等都会加入监听列表,根据数据变化,来改变页面显示。
- <pre> scope.age=20; $scope.$watch('age',function(newValue,oldValue){ console.info(‘监听age’); });</pre>
$digest
- 循环监听列表,当发现监听值发生变化,调用相应回调函数,进行dom操作
- 需要在anguler上下文环境中才能启动
- 每次循环到有值的改变,会重新循环,所以为了保证效率,尽量不要让数据相互影响。相互影响超过10次angular会报错。
$apply
- 把环境改变为angular的上下文环境
- <pre> $scope.$apply(function(){ (angular上下文环境) }); </pre>
mvc
- model(模型) view(视图) controller(控制器)
- model相当于数据,view呈现model里的数据,controller是连接model和iew之间的传输
$scope
- 是一个对象
- 可以嵌套
- 顶层$rootScrope,就近原则查找属性,最终查到$rootScrope,没有不会报错
- function($scope){};依赖注入,被动获取
$index
获取选中节点序号
过滤器
过滤器(filter)正如其名,接受一个输入,通过某种规则处理后,返回处理后的结果。
- currency
- date
- filter
- json
- limitTo
- lowercase
- uppercase
- number
- orderBy
directive
测试指令,在css里面写一个.red;在html中调用ng-class="{red:true}";
- ng-class
- ng-style
- ng-show
- ng-hide ##事件## 给$scope对象添加一个属性,属性为一个函数,在html中ng-click="调用该函数"。 *ng-click
AJAX $http
$http.get("/users/router?username="+$scope.username").success(function(){});$http.post("/users/router",{name:xiaoming,pwd:123456}).success(function(){});
AngularJS初步的更多相关文章
- AngularJs初步学习笔记(part1)
一.摘要: angular是采用JavaScript编写的前端mvc框架,帮助开发者编写现代化的单页面应用.它尤其适用编写有大量CRUD操作的,具有Ajax风格的客户端应用. 二.总结: Angula ...
- 【原创教程】鲸吞HTML
首先,我们的angularJS课程分为三大模块: HTML/CSS/JS基础. angularJS详解. angualrJS的一些实用框架讲解. 其中,第一大模块的对象是对前端开发技术有点了解但不熟悉 ...
- AngularJS的初步学习(1)
AngularJS 是一个Javascript框架.它可通过 <script> 标签添加到 HTML 页面.AngularJS 通过 指令 扩展了 HTML,且通过 表达式绑定数据到 HT ...
- angularjs e2e测试初步学习(一)
e2e测试是从用户角度出发,认为整个系统都是一个黑盒,只有UI暴露出来. angularjs的测试框架是采用protractor. 1.创建文件 首先创建一个项目文件夹test,然后再创建两个文件,一 ...
- 剖析AngularJS作用域
一.概要 在AngularJS中,子作用域(child scope)基本上都要继承自父作用域(parent scope). 但,事无绝对,也有特例,那就是指令中scope设置项为对象时,即scope: ...
- AngularJS 脏检查深入分析
写在开头 关于Angular脏检查,之前没有仔细学习,只是旁听道说,Angular 会定时的进行周期性数据检查,将前台和后台数据进行比较,所以非常损耗性能. 这是大错而特错的.我甚至在新浪前端面试的时 ...
- 摆脱DOM操作,从TodoMVC看angularJS
取代jQuery? 我很久之前便听说了angularJS的大名,之前的leader也经常感叹angularJS的设计如何如何精妙,可叹一直没有机会深入了解,国庆长假因为没钱出游,倒是可以对他做一个了解 ...
- 提高前端开发效率必备AngularJS (基础)
简介 AngularJS 是一个为动态WEB应用设计的结构框架,提供给大家一种新的开发应用方式,这种方式可以让你扩展HTML的语法,以弥补在构建动态WEB应用时静态文本的不足,从而在web应用程序中使 ...
- 基于AngularJS的企业软件前端架构[转载]
这篇是我参加QCon北京2014的演讲内容: 提纲: 企业应用在软件行业中占有很大的比重,而这类软件多数现在也都采用B/S的模式开发,在这个日新月异的时代,它们的前端开发技术找到了什么改进点呢? B/ ...
随机推荐
- SVN—patch的应用
svn 补丁的应用,在eclipse下有时候不能把全部变化加入,出现中文乱码问题.以下转载其他文章 原文地址:http://xiebh.iteye.com/blog/347458 1.create p ...
- objectivc-c---block
基本格式: returnType (^blockName[num])(paramList|void) = ^returnType(paramList|void){block Body}; 标红部分可根 ...
- 【干货】国外程序员整理的 C++ 资源大全【转】
来自 https://github.com/fffaraz/awesome-cpp A curated list of awesome C/C++ frameworks, libraries, res ...
- uva 498 - Polly the Polynomial
UVa 498: Polly the Polynomial | MathBlog #include <cstdio> #include <cstdlib> using name ...
- [Mugeda HTML5技术教程之11]Mugeda API简介
一.API 概述 Mugeda API 提供了一个简单的,结构化的方法来实时动态管理Mugeda内容.它提供了一下方法: •访问Mugeda内容中的对象. •获取和设置对象属性,如位置.旋转.比例.不 ...
- HTML&CSS基础学习笔记1.20-DIV标签2
<span>标签 标签div把文档分割为独立的.不同的部分,而在HTML中,<span>标签则被用来组合文档中的行内元素. 看个实例: <!DOCTYPE html> ...
- C程序设计语言练习题1-11
练习1-11 你准备如何测试单词计数程序?如果程序中存在某种错误,那么什么样的输入最可能发现这类错误呢? 代码如下: #include <stdio.h> // 包含标准库的信息. #de ...
- 用keil直接生成BIN文件
1.下载hex2bin到keil的任意目录,下载地址:http://www.keil.com/download/docs/7.asp 或者 http://www.hex2bin.com/files/h ...
- QuickReport多页打印
You use composite reports for this(TQrCompositeReport) on the quickreports tabTake a look in the Dem ...
- 一定要学会OutputDebugString,方便源码级调试
省得到处自己print,麻烦的要死...