代码改变世界

angularJs

2016-08-26 15:38  改吧  阅读(282)  评论(3编辑  收藏  举报

  学了差不多一个礼拜,感觉这个库还是很不错的,在应用中一些小笔记,其实这些笔记现在来看确实很基础,但是把这个博客当成我自己的一个记录历程,所以我也把这点笔记拿上来:

  

1.是一个js框架,是一个以js语言编写的库(jq也是一个库)
2.ng-app只能在一个页面上定义一个
3.html5允许扩展的属性,以data-开头
     所以可以用data-ng-来让网页对HML5有效
4.表达式写在大括号内
5.  angular app初始化一个angular应用程序
     angular module定义angular的应用
     angular controller用于控制angularJs应用。控制器
6.ng-app ng-module都是一个指令
7. directive函数来添加自定义的指令,分为三种
     第一种:
     <run-directive></run-directive>
     <div run-directive></div>
     app.directive(‘runDirective’,function(){
          return{
               template:’<h1>自定义指令</h1>'
          }          
     })
     第二种:
     <div class="run-directive"></div>
     app.directive('runDirective',function(){
        return {
            restrict:"C",
            template:'<h1>自定义指令</h1>'
        };
    })
第三种:
<!-- directive:run-directive -->
app.directive('runDirective',function(){
        return {
            restrict:"M",
            replace:true,
            template:'<h1>自定义指令</h1>'
        };
    })
restrict的值可以是以下几种:
     E作为元素名使用
     A作为属性使用
     C作为类名使用
     M作为注释使用
ps:因为restrict的默认值是EA,所以作为元素名跟属性的时候不需要设置restrict
8.template:模板
     model:模型
     module:模块
     odd:奇数
     event:偶数
 
9.ng-model:可以验证表单输入
   ng-model指令可以为应用程序提供状态值(invalid,dirty,touched,error)
     使用ng-model指令可以基于他们的状态来为HTML元素提供css类
     ng-model指令根据表单域的状态来添加、移除类
     ng-empty
     ng-not-empty
     ng-touched
     ng-untouched
     ng-valid
     ng-invalid
     ng-dirty
     ng-pending
     ng-pristine
10.angular用了MVC模式吗?
          M:model(模型),当前视图中可用的数据
          V:view(视图),即HTML
          C:controller(控制器),即javascript函数,可以添加或修改属性
scope是模型
如果你改变了视图,模型和控制器也会相应的更新
scope的作用范围要清晰
11.根作用域:$rootScope
     所有应用独有一个$rootScope,他可以作用在ng-app指令包含的所有HTML元素中
12.控制器,是js对象,由标准的js对象的构造函数创建
13.过滤器:controller.html
14.http请求会存在跨域问题
     只能在本站服务器上
15.表单构成:
     input元素,
     select元素
     button元素
     textare元素
16.$dirty:表单有填写记录
       $valid:字段内容合法
17.依赖注入机制:value factory service provider constant