• anjularjs常用的内置方法


    1.$apply

      anjularjs通过$apply方法去执行脏检查,及时告诉model绑定变量更新。

      示例:定义一个date变量显示在页面上,它的控制器是firstCtrl,这个date变量有一个时钟功能,每一秒变一次。

        页面上:

          <div ng-controller="firstCtrl">

            {{date}}

          </dv>

        Controller.js:

          var firstCtrl=function($scope){

            $scope.date=new Date();

            setInterval(function(){

              $scope.$apply(function(){

                $scope.date=new Date();

              });    

            });

          }

    2.$watch

      使用watch手动的监听某个基本变量或者对象变量,当变量或者对象变量改变的时候去触发某些事件。

      示例:监听name变量的变化,当name变量的变化超过30次,就不让其变化,并一直保持某个值。

        页面上:

          <div ng-controller="firstCtrl">

            <input type="text" ng-model="name"></input>

            {{name}}

          </div>

        controller.js:

          var firstCtrl=function($scope){

            $scope.name='小明';

            $scope.count=0;

            $scope.$watch('name',function(newValue,oldValue){

              ++$scope.count;

              if(scope.count>30){

                $scope.name='watch方法监听name变化超过30次之后不让其改变!';

              }

            });

          }

        注意:也许你会有这样的疑惑,$apply方法是触发脏检查的,但是watch方法里面的name变量和count居然也能自动变化?其实在apply方法去触发脏检查的时候,

        也是通过watch方法找到digest方法去判断并更新model的,所以道理是相同的。

        

  • 相关阅读:
    巴塞尔协议
    商业银行资本充足率
    开源录屏软件Open Broadcaster Software
    简介二:操作系统和集群开源技术研究
    【Python】 零碎知识积累 II
    【Python】 用户图形界面GUI wxpython IV 菜单&对话框
    【Python】 关于import和package结构
    【Python】 魔法方法
    【Python】 闭包&装饰器
    【Python】 迭代器&生成器
  • 原文地址:https://www.cnblogs.com/bzx888/p/5405039.html
Copyright © 2020-2023  润新知