AngularJS 初探(一)
AngularJS作为一个小而精的框架,在UI设计和页面逻辑交互上有他天然的优势,为Web程序员提供了一种快捷开发的选项,更何况还有google这个干爹呢!
作为一名AngularJS的初学者,我于此记录下我的学习过程。
要点
- 依赖注入
依赖注入从某种程度上说是为了给控制器分级,是控制逻辑的注册和分级,这样,不同的module掌控了不同的service和factory,他们之间可以通过继承和覆盖来完成一个层次上的分级功能。 - directive
directive是集成自己的页面元素和内里的控装逻辑,代码复用的一种方便的方式,封装和集成的完美体现
上面展示了一个directive的定义过程var app=angular.module('myApp',[]); app.directive('footMenu',function(){ return { restrict:'E', transclude:true, scope:{}, controller:'footCtrl', templateUrl:'/footMenu.html' }; });
- Service,factory,value
说实话,这三种东西的区别我还是没有搞清楚,如果有大牛知道,请不吝赐教。但它们本质上都是基于Provider的,是一种语法糖。 - controller
MVC模型在业界已经是大名鼎鼎,也有人说AngularJS是MVMM模型,小生愚钝,这两个都不怎么熟。但是把界面和控制逻辑分离,确实是非常伟大的举动。我现在在做一个APP,把View提前写好,再把交互逻辑加入,最后把与服务端交互的逻辑加入,是个看起来不错的开发逻辑。让我们再回来看看controller吧。通过controller我们把一些控制逻辑与HTML的特定元素绑定,实现了不同控制逻辑的分离。app.contrller('myCtrl',function($scope,$location){ $scope.redirect=function(destination){ $location.path(destination).replace(); }; });
上文定义了一个按钮上的跳转逻辑,这个controller起作用的就是div包裹的区域<div ng-controller="myCtrl"> <button ng-click="redirect('/hh')">go</button> </div>