之前在前端一直使用angularJS操作后端返回的数据,使用起来非常方便,公司一个新项目由于更加侧重于显示页面的美观性,使用了easyUI,使用了一个月左右了吧,发现了几点angularJS和easyUI的不同点。都是项目中自己的感悟,如有不正,请多多指教,也请多多包涵。(今天先更angularJS)
1、angularJS
1.1 angularJS遵循了MVC模式,
Model:数据,其实就是angular变量($scope.XX);
View: 数据的呈现,Html+Directive(指令);
Controller:操作数据,就是function,数据的增删改查;
这样做的好处就是松耦合,模块与模块之间的依赖变的更低。
1.2angularJS最大的特点就是双向绑定(ng-model),这样模型和视图之间就能自动进行数据同步,
官方提供了很多标签用于操作数据,
例如:
ng-model:用于双向绑定,
ng-repeat:用于循环遍历,
ng-app:告诉子元素以下的指令是归angularJs的,angularJs会识别,
ng-init:初始化指令,(个人最喜欢这个指令,可以放到<body>、<div>、<span>等标签上,当加载到这个标签的时候就执行这个对应的方法,当然,也可以用于初始化变量),
等等,
1.2$scope:
$scope是一个桥梁,连接了控制器和视图,当我们在视图中修改了$scope中的变量的时候,会立刻自动更新控制器中的变量值,反过来也是。
1.3$http:
我们的数据都是从后端返回来的,那怎么才能得到这个后端的返回值呢?在angularJS中通过$http获得,
如下是一个小demo:
var app=angular.module('myApp',[]); //定义了一个叫myApp的模块
//定义控制器
app.controller('myController',function($scope,$http){
$scope.findAll=function(){
$http.get('data.json').success(
function(response){
$scope.list=response;
}
);
}
});
使用方法一目了然了吧。
1.4 MVC分层,在公司的项目中把angularJS分层了,service层中定义的是后端url,controller层中定义了业务逻辑,变量,方法以及对后端返回值的操作。