• AngularJs入门篇-控制器的加深理解基础篇


    下面做的是一个更新时间的效果,每一秒钟就会更新一下,视图中会显示出当前的时间

     

    下面的这个例子中,SceondController函数将接受两个参数,既该DOM元素的$scope和$timeout。

    可以将视图中clock变量用{{}}包起来,以显示$scope中的clock的值。

    ///////////////  THML

    <div ng-controller="SceondController">

      <h5>{{ clock }}</h5>

    </div>

    ///////////////  SCRIPT

    <script type="text/javascript">

      angular.module("myApp", []) 

        .controller("SceondController", function($scope, $timeout) {

          var updataClock = function() {

            $scope.clock = new Date();

            $timeout(function() {

              updataClock();

            }, 1000);

          };

          updataClock();

        });

    </script>

     

    //数据绑定的最佳实践

    由于JavaScript自身的特点,以及它在传值和引用时的不同处理方式,通常认为,在视图中通过对象的属性

    而非对象本身来进行引用绑定,是AngularJS的最佳实践。

    那么如果把这个最佳实践应用到上面的那个时钟效果上,那么需要把视图中的代码写成如下这个样子:

    angular.module("myApp", [])

        .controller("SceondController", function($scope) {

          $scope.clock = {

            now: new Date()

          };

          var updataClock = function() {

            $scope.clock.now = new Date();

          };

          setInterval(function() {

            $scope.$apply(updataClock);

          }, 1000);

          updataClock();

        });

    *或许这个时候不知道什么时候用$apply,那么我会单独的找点资料,为解释它的用法。目前只需要不添加它,是实现不了的就可以了。

    通过分享,结交好友~ 如本文对您有益,请给予关注。转载请注明出处!-- 小数
  • 相关阅读:
    自定义实现wcf的用户名密码验证
    EF6:编写你自己的code first 数据迁移操作(睡前来一篇,翻译的)
    .net 连接Redis
    idea external libraries 只有jdk问题
    MAC vim安装gruvbox主题
    Mac gitk安装与优化
    spring security 4 filter 顺序及作用
    mysql 采样查询 / 间隔查询 / 跳跃查询的两种实现思路
    nginx warn an upstream response is buffered to a temporary file /var/cache/nginx/proxy_temp/ while reading upstream
    nginx日志 logrotate配置
  • 原文地址:https://www.cnblogs.com/mcat/p/4184656.html
Copyright © 2020-2023  润新知