1 $rootScope  run  : run 方法初始化全局的数据 ,只对全局作用域起作用 如$rootScope

<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script>
<div ng-app="a" >
{{name}}
</div>
<script>
var app=angular.module('a',[]);
    app.run(function ($rootScope) {
        $rootScope.name='sdfa';
    });
</script>

2 $parse 将一个AngularJS表达式转换成一个函数

<script src="http://apps.bdimg.com/libs/angular.js/1.2.6/angular.min.js"></script>
<div ng-app="a" ng-controller="ctrl" >
{{ParsedValue}}
</div>
<script>
    /*
    * $parse 将一个AngularJS表达式转换成一个函数
    *$parse服务根据$scope.context中提供的上下文解析$scope.expression语句,然后使用$scope.data数据填充表达式中的变量
    * */
var app=angular.module('a',[]);
    app.controller('ctrl',function ($scope,$parse) {
       $scope.context={
           add: function (a,b) {return a+b+1;},
           mul: function(a,b){return a*b;}
       }
        $scope.expression="mul(a,add(b,c))";
        $scope.data={
            a:3,
            b:6,
            c:9
        }
        var parseFunc=$parse($scope.expression);
        $scope.ParsedValue=parseFunc($scope.context,$scope.data);
    });
</script>

demo2 :输入表达式  1+2*3 结果为7

<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script>
<div ng-app="a" ng-controller="ctrl" >
    <input type="text" ng-model="expression">
{{ParsedValue}}
</div>
<script>
var app=angular.module('a',[]);
    app.controller('ctrl',function ($scope,$parse) {
        $scope.$watch("expression", function (newValue,oldValue,context) {
            if(newValue!== oldValue){
                var parseFunc=$parse(newValue);
                $scope.ParsedValue=parseFunc(context);
            }
        })
    });
</script>

3. ng-message表单验证

<!DOCTYPE html>
<html ng-app="myTest">
<head>
    <title>Index</title>
    <script src="//cdn.bootcss.com/angular.js/1.5.6/angular.min.js"></script>
    <script src="//cdn.bootcss.com/angular-messages/1.5.7/angular-messages.js"></script>
</head>
<body>
    <form name="myForm" class="form-horizontal" novalidate>
                用户名<input type="text" placeholder="ng-Messages" name="name" ng-model="username"
                       ng-minlength=3 ng-maxlength=20 required />
                <hr/>
                $error:{{myForm.name.$error}}
                <hr/>
                <div ng-messages="myForm.name.$error">
                    <div ng-message="required">这是必填项</div>
                    <div ng-message="minlength">字符太短小于3</div>
                    <div ng-message="maxlength">字符太长大于20</div>
                </div>
    </form>
</body>
</html>
<script>
    angular.module("myTest", ['ngMessages']);
</script>

angularjs 权威指南 版本 1.2.6的更多相关文章

  1. JavaScript权威指南 - 函数

    函数本身就是一段JavaScript代码,定义一次但可能被调用任意次.如果函数挂载在一个对象上,作为对象的一个属性,通常这种函数被称作对象的方法.用于初始化一个新创建的对象的函数被称作构造函数. 相对 ...

  2. JavaScript权威指南 - 对象

    JavaScript对象可以看作是属性的无序集合,每个属性就是一个键值对,可增可删. JavaScript中的所有事物都是对象:字符串.数字.数组.日期,等等. JavaScript对象除了可以保持自 ...

  3. JavaScript权威指南 - 数组

    JavaScript数组是一种特殊类型的对象. JavaScript数组元素可以为任意类型,最大容纳232-1个元素. JavaScript数组是动态的,有新元素添加时,自动更新length属性. J ...

  4. 《Ansible权威指南》笔记(1)——安装,ssh密钥登陆,命令

    2016-12-23 读这本<Ansible权威指南>学习ansible,根据本书内容和网上的各种文档,以及经过自己测试,写出以下笔记.另,这本书内容很好,但印刷错误比较多,作者说第二版会 ...

  5. maven权威指南学习笔记(五)—— POM

    1. 简介 Archetype插件通过 pom.xml 文件创建了一个项目.这就是项目对象模型 (POM),一个项目的声明性描述. 当Maven运行一个目标的时候,每个目标都会访问定 义在项目POM里 ...

  6. maven权威指南学习笔记(一)——简介

    maven是什么?有什么用? Maven是一个项目管理工具,它包含了     一个项目对象模型 (Project Object Model),     一组标准集合,     一个项目生命周期(Pro ...

  7. 《javascript权威指南》读书笔记——第二篇

    <javascript权威指南>读书笔记——第二篇 金刚 javascript js javascript权威指南 今天是今年的196天,分享今天的读书笔记. 第2章 词法结构 2.1 字 ...

  8. 《javascript权威指南》读书笔记——第一篇

    <javascript权威指南>读书笔记——第一篇 金刚 javascript js javascript权威指南 由于最近想系统学习下javascript,所以开始在kindle上看这本 ...

  9. Netty权威指南

    Netty权威指南(异步非阻塞通信领域的经典之作,国内首本深入剖析Netty的著作,全面系统讲解原理.实战和源码,带你完美进阶Netty工程师.) 李林锋 著   ISBN 978-7-121-233 ...

随机推荐

  1. xp远程桌面登陆需要身份验证问题解决

    今天在客户这边部署了一个专门用于远程访问的计算机,但是系统是xp,windows服务器最新的已经到2012版本了,windows服务器从2008开始就要求远程桌面登陆支持nla,因此在使用xp登陆wi ...

  2. splice 很好用

    splice 类似一个 copy pos 和 delete的组合拳,用起来很方便. arrayObject.splice(index,howmany,item1,.....,itemX) // ind ...

  3. 金额大小写转换和input失去焦点触发事件

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  4. poj 1700

    http://poj.org/problem?id=1700 题目大意就是一条船,有N个人需要过河,求N个人最短过河的时间 #include <stdio.h> int main() { ...

  5. centos7.0改变用户创建目录组权限

    centos7.0改变用户创建目录组权限可通过umask进行设置. 临时改变可通过umask命令进行设置 永久性改变,可通过修改~/.bash_profile的方式进行调整.

  6. ACM/ICPC 之 数据结构-线段树+区间离散化(POJ2528)

    这道题用线段树做更方便更新和查询,但是其数据范围很大,因此要将离散化和线段树结合起来,算是一道比较经典的线段树+离散化的例题. 线段树的离散化有很多方法,在这里,我先用一次结点离散化,间接将源左右端点 ...

  7. mybatis延迟加载

    配置完成后可能会报错Cannot enable lazy loading because CGLIB is not available. Add CGLIB to your classpath 是由于 ...

  8. ListView之BaseAdapter的使用

    话说开发用了各种Adapter之后感觉用的最舒服的还是BaseAdapter,尽管使用起来比其他适配器有些麻烦,但是使用它却能实现很多自己喜欢的列表布局,比如ListView.GridView.Gal ...

  9. 【opencv】轮廓相关

    IplImage* contours_rect; IplImage* contours; CvMemStorage* countours_storage=NULL; if(contours_rect= ...

  10. 【python】类中的self

    在python的类中,经常会写self,代表对象自己.如下例: #coding=utf-8 class Foo: def __init__(self, name): self.name = name ...