是一个MVC框架:数据、表现分离
数据、业务逻辑、表现层的这些东西分离
angular是什么?能用他干什么?用angular和不用angular有什么区别?
传统开发需要一堆重复性操作,比如获取一个文本框数据,传统需要获取元素,加事件,读取它的值,这些操作是重复性的,angular的作用是想减轻程序员的负担,希望降低程序员重复性的劳动量,能够专心的把精力放在你的业务逻辑上,这就是angular的作用。
angular扩展了HTML的功能,传统的HTML不会有ng-model、ng-bind、ng-app这些指令,但是angular可以。
angular是颠覆性的,跟传统开发不一样,不需要获取元素,添加事件等。
angular可扩展,可以加很多自定义的东西。
MVC:
M:model 模型 -- 数据
V:view 视图 -- 表现层
C:controller 控制器 -- 业务逻辑
ng-app:代表angular掌管的范围
依赖注入:
ng-bind 不常用,不是很好用,bind的功能有点弱,有很多个性化的需求没法实现。一般使用{{}}
angular和普通的JavaScript不互通,angular用不了JavaScript的东西,JavaScript也用不了angular的东西。函数不互通,变量也不互通,事件也不互通。
angular开发模式和传统开发模式完全不同,只需要定住数据,数据是核心。传统的需要关心样式、元素,angular里面完全不需要。数据是核心,数据是核心,数据是核心
ng-click:点击事件
ng-init:初始化数据
angular的兼容性,必须是高版本浏览器,IE6、IE7不用想,移动端是完全支持的!
controller:控制器,逻辑性的代码都应该放到控制器里面,不应该写在HTML里面,专门用来放代码。桥梁,正常情况下,普通JavaScript和angular是不互通的,但是通过controller就可以完成互通。
controller:需要定义、调用才能起作用
<div ng-controller="zhangsan"> <span>{{a}}</span> </div> <script src="../js/angular.js" type="text/javascript" charset="utf-8"></script> <script type="text/javascript"> var app = angular.module(‘test‘,[]); app.controller(‘zhangsan‘,function ($scope) { $scope.a = 12; }); </script>