AngularJS

一、AngularJS是什么?

AngularJs是一个用于设计动态web应用的结构框架。首先,它是一个框架,不是类库,是像EXT一样提供一整套方案用于设计web应用。

二、AugularJS特性

angular引入了一些非常棒的特性,包括模板机制、数据绑定、模块、指令、依赖注入、路由。通过数据与模板的绑定,能够让我们摆脱繁琐的DOM操作,而将注意力集中在业务逻辑上。AngularJS有五个最重要的功能和特性:
特性一:双向的数据绑定
特性二:模板
特性三:MVC
特性四:服务和依赖注入
特性五:指令(directives)

三、指令

通过使用模板,可以把model和controller中的数据组装起来呈现给浏览器,还可以通过数据绑定,实时更新视图,让我们的页面变成动态的。模板中可以使用的东西包括以下四种:
1.指令:ng提供的或者自定义的标签和属性,用来增强HTML表现力;
2.标记:即双大括号{{}},可将数据单向绑定到HTML中;
3.过滤器:用来格式化输出数据;
4.表单控制:用来增强表单的验证功能。
1)样式相关的指令
    ng-class用来给元素绑定类名
    ng-style用来绑定元素的css样式
    对于比较常用的元素显隐控制,ng也做了封装,ng-show和ng-hide的值为boolean类型的表达式,当值为true时,对应的show或hide生效。框架会用display:block和display:none来控制元素的显隐。
2)表单控件功能相关指令
      ng-checked控制radio和checkbox的选中状态
      ng-selected控制下拉框的选中状态
    ng-disabled控制失效状态
3)事件绑定相关指令
       ng-change
  ng-dblclick
  ng-mousedown
  ng-mouseenter
  ng-mouseleave
  ng-mousemove
  ng-mouseover
  ng-mouseup
  ng-submit 
4)特殊的ng-src和ng-href
5)自定义指令restrict中可以分别设置:
    A匹配属性
    E匹配标签
    C匹配class
    M匹配注释

四、自定义服务

//使用$provide来定义
var app = angular.module('MyApp', [], function($provide) {
    $provide.factory('remoteData', function() {
 var data = {name:'n',value:'v'};
        return data;
    });
});
//使用factory方法

    app.factory('remoteData',function(){
    var data = {name:'n',value:'v'};
    return data;
});
//使用service方法
app.service('remoteData',function(){
    this.name = 'n';
    this.value = 'v';
});

五、路由示例
路由的使用方式及步骤:为demoApp添加一个路由,代码如下:

demoApp.config(['$routeProvider',function($routeProvider) {  
$routeProvider.when('/list', {  
  templateUrl: 'route/list.html',  
  controller: 'routeListController'
  }).when('/list/:id', {  
   templateUrl: 'route/detail.html',
   controller: 'routeDetailController'
  }).otherwise({  
      redirectTo: '/list'  
   });  
}]);
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • AngularJS AngularJS概述 介绍 简称:ng Angular是一个MVC框架 其他前端框架: Vu...
    我爱开发阅读 2,349评论 0 8
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,080评论 19 139
  • 个人博客搭建完成,欢迎大家来访问哦黎默丶lymoo的博客 博主最近了解学习了一下angularJS,记录一下心得给...
    黎默丶lymoo阅读 1,060评论 0 21
  • 胆怯的背后是狡黠。
    乌良阅读 97评论 0 0
  • 今晚推出一款对于淡化色斑,美容美颜等功效的酵素--猕猴桃苹果酵素: 1.我们先发一下水果的功效哦! 2.我们再发一...
    莎力阅读 1,556评论 0 0