angular

作者: 简单的名字吧 | 来源:发表于2017-03-14 22:30 被阅读0次

    Angular:
    框架: 对程序员的限制高
    库: jquery,bootstrap —— 使用灵活,对程序员的限制少
    它是MVC框架 精确定义是MVVM框架 mv*
    SPA (single page application) 移动端
    MVC:
    M: Model 模型——数据
    V: View 视图
    C: Controller 控制器
    MVC 分离:
    1.数据、逻辑、 表现层代码的分离
    2.分工
    **学好:它最核心的核心的东西就是数据
    以前写JS:存在大量的重复劳动
    window 事件 .....
    Angular:避免了重复劳动,让程序员更加关注需求的本质和实现。
    版本:
    官网:https://angularjs.org/
    混乱:
    1.2 以下
    1.3 以上 上课
    2.x 没人用 angular2
    3.x 消失
    4.x 即将要出来
    基本用法:
    Angular指令:
    以 ng 开头。
    是否需要服务器环境——最好
    oninput是input值改变的时候触发
    1、ng-app
    angular管辖的范围
    2、ng-model
    数据,数据模型—— 数据从哪来
    3、ng-bind
    数据绑定 —— 数据到哪去

    MVC:
    M: model 模型,数据——现在的例子中: 输入框
    V: view 视图 ——现在的例子中: div
    C:

    Angular特性:
    1).双向绑定
    ng-bind: 不好 一开始清空内容
    *Angular——接管了 UI
    *Angular——扩展了html

    4、表达式{{a}}
    *Angular 和 原生的JS——不互通(事件、函数),可以解决。
    5、ng-click
    事件: ng-mouseover ....
    * 只关注数据
    6、ng-init
    数据初始化
    7、ng-repeat 循环
    循环数组:
    ng-repeat="item in arr"
    {{item}} —— 数组中的每一项
    循环JSON:
    ng-repeat="(key,value) in json"
    {{key}} —— json中的key
    {{value}} —— json中的value
    ng-repeat:
    数组:
    (key,value) in arr
    key—— 索引
    value —— 每一项
    json:
    (key,value) in json
    key 键名
    value 键值
    8、数组的索引: $index 获取本元素的索引
    *在数组里,默认情况下不允许出现重复的数字 如果有重复的会报错
    track by 重新指定数组中的key
    以前:(key,value) in arr
    现在:item in arr track by $index
    9、过滤器 filter
    currency : 货币的filter
    参数: currency:'¥'
    date:
    date:'yyyy MM dd HH(hh) mm ss'
    放 | 后面
    总结:
    ng-app
    ng-model
    ng-bind
    {{}}
    ng-repeat
    ng-click
    ng-init
    $index
    item in arr track by $index
    currency
    yyyy年MM月dd日 HH(hh) mm ss

    10、ng-show ng-hide

    Angular:
    1、和原生的JS 是不互通 —— 可以得解决
    2、和传统的开发方式完全不同——只要盯住数据,数据是核心
    不互通:
    1)函数不互通
    Number 示例
    2)变量不互通
    全局变量示例
    3)事件不互通

    MVC—— C
    控制器: Controller
    1)定义模块
    angular.module(模块名,所依赖的其它模块);
    let mod = angular.module('mod1',[]);
    2)引用模块
    ng-app="模块名"
    3)定义Controller
    mod.controller('控制器名',回调函数($scope){
    //控制器的代码
    });
    4)引用controller
    ng-controller="ctr1"

    *所有的数据都放在$scope

    $scope : 依赖项

    Angular:
    1)双向绑定
    2)依赖注入
    Controller:
    1)放代码
    2)原生和angular之间的桥梁 —— 在controller中可以使用原生代码
    *一个页面中,可以有多个模块
    *在一个模块中,可以有多个控制器
    *为什么不互通:因为angular的东西都在$scope身上。
    总结:
    mvc
    ng-app
    ng-model
    ng-bind
    ng-init
    ng-repeat
    ng-click
    ng-hide
    ng-show
    {{}}
    $index
    filter
    track by
    ng-controller
    angular.module('app',[])
    .controller('ctrl',($scope)=>{

    })

    相关文章

      网友评论

        本文标题:angular

        本文链接:https://www.haomeiwen.com/subject/ayjknttx.html