zoukankan      html  css  js  c++  java
  • angularjs读书笔记(一)

    angular:模板和数据都会发送到浏览器中,在客户端进行装配

    ng-app="myApp"
    声明了angular的边界
    ng-app="TextController"
    控制器告诉angular该模型是由哪些对象或者基本数据构成,再赋值给页面对象。

    var myAppModule = angular.module('myApp',[]);
    myAppModule.controller('TextController',function($scope){
    var someText = {};
    someText.message = 'you have started your journey';
    $scope.someText = someText;
    });

    在这里,调用了angular对象创建了一个名为myApp的模块,
    然后把控制器函数传给app模块的controller函数

    模板与数据绑定流程:

    用户请求起始页,请求了某页面中的angular.js
    页面加载完成后,angular查找ng-app命令,定义模板边界。
    遍历模板,查找指令与绑定:注册监听器,执行dom操作,从服务器获取初始化数据。
    之后可能会链接到服务器加载需要显示给用户的其他数据。

    angular构建应用的时候,可以将应用中的模板和数据分离开
    这样就可以把模板缓存起来,加快页面的载入速度。

    显示文本:
    {{greet}}与ng-bind是等价的但是在加载模板时,第一种可能会被看到。
    <li ng-repeat='student in students'>

    表单输入:
    <form ng-controller="SomeController">
    <input type="checkbox" ng-model="youCheckedIt">
    //对应$scope.youCheckedIt,值为true和false
    </form>

    ng-change:指定一个控制器方法,修改值时调用。
    ng-submit:点击button提交时调用。能阻止默认的post操作
    原生交互的改动:
    onclick->ng-click等等。

    神马是非入侵式JavaScript
    问题所在:
    1.并不是每个人的浏览器都支持javascript,需要让每个人都看到你的内容,
    并且无需在浏览器中执行代码就能实现你的应用。(已经解决)
    2.javascript在不同平台上的运行方式不同
    3.事件处理器会引用全局变量中的函数,如果想把其他类库集成进来
    而这些类库有相同的函数名,就会蛋疼。
    4.事件监听使得代码难以维护,拓展,理解。

    解决方法:
    对于事件绑定,angular会屏蔽浏览器差异性
    不同事件绑定的函数名相同??在angular中为两者分配不同的controller,
    在两者的函数中分别进行处理。
    在angular中可以编写包含业务逻辑的控制器,无需引用dom

    splice(添加、删除项目的位置,删除项目的数量,新增的项目1,新增的项目二。。)

    $index显示项目序号
    <li ng-repeat='track in album'>
    {{$index+1}}<br/>
    {{track.name}}<br/>
    {{track.XXX}}
    </li>

    显示与隐藏:
    ng-show="pageState.show"//对应$scope.pageState.show//boolean值
    ng-hide效果与之相反。

    今天看到第25页。

  • 相关阅读:
    js post提交
    JS转换HTML转义符
    HTML 空格的表示符号 nbsp / ensp / emsp 的区别
    JS解析XML文件和XML字符串
    js数组
    javaScript系列:js中获取时间new Date()详细介绍
    父类和子类(指针,对象,引用 ,盲点)
    震惊~数组居然可以直接比较大小
    二分递归求最大次大的方法(数组的下标的表示方法居然可以方括号内部加减)
    二分递归
  • 原文地址:https://www.cnblogs.com/youngercode/p/3873471.html
Copyright © 2011-2022 走看看