(五下下)$timeout方法,控制器与作用域

本文介绍了AngularJS中$timeout方法的功能与用法,包括如何使用$timeout来延迟执行任务,以及如何通过$timeout.cancel取消延迟任务。同时,还探讨了控制器与作用域之间的关系及其在视图复用中的应用。

$timeout方法

angular.js的$timeout指令对window.setTimeout做了一个封装,它的返回值是一个promise对象.当定义的时间到了以后, 回调函数就会被执行.

如果需要取消一个timeout,调用timeout.cancel(promise)timeout(fn, [delay], [invokeApply]);

fn: 回调函数(必填)
delay: number类型.延迟的时间(非必填),如果不填,表示等线程空下来以后就执行.比如当页面被渲染完成后.
invokeApply: 布尔值.是否需要进行脏值检测(非必填),不填默认为true, 则fn回调会被包在scope.apply()中执行
返回值: 返回一个promise对象.当定义的时间到了以后,这个promise对象就会被执行
执行后的值就是fn回调函数的返回值
取消timeout: $timeout.cancel([promise])

  • promise: 一个由$timeout()所创建的对象。调用cancel()以后,这个promise对象就会被取消。
  • 返回值: 如果 $timeout()的回调还没有被执行的时候就执行cancel()方法,那么$timeout的回调就不会被执行。

控制器与作用域
对作用域中的数据的修改会导致所有依赖于该数据的值都被修改。
使用一个单块控制器
1. 在body元素(或包含了所有数据绑定和指令的元素上)使用ng-controller指令,该控制器应用于所有的HTML元素。
使用同一个控制器创建多个视图:
2. 在同一个应用程序中创建多个视图并复用同一个控制器。 不同的视图能够以不同的方法对同一份数据和功能进行展示。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值