在 angularjs 工厂中使用 setInterval

2023-11-24

我正在尝试 angularjs 文档中给出的代码(此处给出:http://jsfiddle.net/zGqB8/) 它只是实现一个时间工厂并使用 $timeout 每秒更新时间对象。

angular.module('timeApp', [])
.factory('time', function($timeout) {
    var time = {};

    (function tick () {
        time.now = new Date().toString();
        $timeout(tick, 1000);  // how to do it using setInterval() ?
    })();

    return time;
});

我将如何使用 setInterval() 函数而不是 $timeout() 来做到这一点? 我知道需要使用scope.$apply()进入角度执行上下文,但它在工厂函数中如何工作?我的意思是,在控制器中,我们有一个作用域,但在工厂函数中没有作用域?


您可以使用$timeout作为间隔。

var myIntervalFunction = function() {
    cancelRefresh = $timeout(function myFunction() {
        // do something
        cancelRefresh = $timeout(myIntervalFunction, 60000);
    },60000);
};

如果视图被破坏,您可以通过监听来破坏它$destroy:

$scope.$on('$destroy', function(e) {
        $timeout.cancel(cancelRefresh);
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 angularjs 工厂中使用 setInterval 的相关文章

  • 浏览器视口大小(以设备像素为单位)

    Goal 我希望 Flash 能够获得有关浏览器视口宽度和高度 以设备像素为单位 的准确信息初始化 调整大小或浏览器缩放事件时 规格 我需要将 flash 嵌入到在 chrome safari firefox 等中运行的 html 页面中
  • 在 Internet Explorer 中使用什么来监视 jscript 内存使用情况

    我们正在调试 GWT 应用程序 在 Firefox 中运行正常 在 IE6 0 中开始运行正常 但一段时间后 它就会崩溃并开始爬行 经过一些测试后 我们怀疑存在一些内存问题 使用了太多内存 内存泄漏等 除了使用taskmanager和pro
  • Vue 3 Composition API 提供/注入在单文件组件中不起作用

    我正在使用 Composition API 在 VueJS 3 中创建一个库 我实现了提供 注入 如中所述docs https v3 vuejs org guide composition api provide inject html i
  • 位置特征检测:固定

    我正在尝试找到一个脚本来检测设备是否放置position fixed元素相对于视口而不是整个文档 目前 标准桌面浏览器和 Mobile Safari 适用于 iOS 5 都是这样做的 而 Android 设备则相对于整个文档放置固定元素 我
  • 通过 JavaScript 获取表单名称

    我有一个简单的问题 但我在网上找不到好的解决方案 我有这个 HTML 代码
  • 按下回车键时不刷新页面

    我遇到了一些问题 只要表单中有输入 回车键就会触发页面刷新 下面的代码 如果按下回车并且文本区域 input 中没有输入任何文本 则不会刷新页面 但是如果按下回车并且 input中有输入或者光标位于文本区域 我不确定是什么触发了它 因为 s
  • 如何使用 Greasemonkey 监视静态 HTML 页面的更改?使用哈希?

    我希望我的 Greasemonkey 脚本仅在其访问的静态页面具有与以前完全相同的内容时运行 现在我可以设置一个包含该页面哈希的变量 我正在寻找一种动态散列页面的方法 以便我可以将我的散列与生成的散列进行比较 关于如何即时实现散列的任何想法
  • javascript 选择自定义光标 (svg)

    我正在动态地将光标更改为悬停时的本地 svg element on mouseover function this css cursor url svgs pointer svg 9 30 auto 工作正常 但我想选择该 svg 来操纵其
  • JavaScript 继承;调用和原型

    要在Javascript中实现继承 通常需要执行以下两个步骤 假设我有一个基类 Animal var Animal function name this name name 我现在想从中派生一个子类 Dog 所以我想说 var Dog fu
  • $exceptionHandler 中的 $location - 依赖冲突

    我正在尝试实现一个非常标准的任务 当发生异常时 重定向到我的 error page 代码的简化形式如下所示 app factory exceptionHandler location function location return fun
  • JavaScript推送函数中的动态变量

    我在 JavaScript 中使用推送功能 var chartData for var i 0 i lt 3 i chartData push date new Date year s mon s date s hr s min s sec
  • 将 Firebase 云消息传递与 Windows 应用程序结合使用

    我在 Android 和 iOS 应用程序中使用 Firebase Cloud Messaging 但是我还有此应用程序的 Windows Mac OS 版本 我想保留相同的逻辑 我知道 Firebase Cloud Messaging 可
  • mongodb 聚合 - 累积字段的不同组值

    如果我有Player表格文件 name String score Int 我有Group文档 其中组代表玩家列表 groupName String players ObjectID 玩家可以属于多个组 我想做一个聚合Player文档 按以下
  • 使用 JavaScript 移动页面上的按钮

    我的按钮可以移动 但奇怪的是 我无法弄清楚偏移是否有问题 我希望我的按钮随着鼠标光标移动 但现在它的移动方式不是我想要的 有时它会消失 另外 创建的新按钮是重叠的 我不知道如何解决这个问题并拥有更好的外观 var coorA var coo
  • 传递给 $resource 的 @id 是什么?

    resource entries id id id update method PUT id是什么 在 资源上doc page http docs angularjs org api ngResource 24resource下面有人这么说
  • 表单发布请求并存储收到的数据

    我有一个非常简单的表单 在提交时发出发布请求
  • 如何使用 JavaScript 或 jQuery 克隆 HTML 元素的样式对象?

    我正在尝试克隆元素的样式对象 这应该允许我在更改后重置所述元素的样式 例如 el style left 50px curr style left 50px Modify the elements style The cloned style
  • react-native - 图像需要来自 JSON 的本地路径

    你好社区 我正在react native中开发一个测试应用程序 并尝试从本地存储位置获取图像 我实际在做什么 我将图像直接链接源提供给 var 并在渲染函数中调用此方法 react 0 14 8 react native 0 23 1 np
  • 滚动顶部不符合预期

    Note 由于上次忘记奖励而重新开放赏金 A Woff 大师已经给出答案 我想在用户展开某一行时到达该行 这样当最后一个可见行展开时 用户不必向下滚动即可查看内容 I used example tbody on click td green
  • 测量窗口偏移

    有没有一种方法可以测量 jQuery 中窗口的偏移量 以便我可以比较 固定 元素和相对定位元素的位置 我需要能够知道窗口滚动了多远 以便我可以使用该图来计算固定元素的高度 相对于视口顶部 和相对对象的高度 相对于顶部 之间的差异文件的内容

随机推荐

  • 防止 UIAlertView 关闭

    作为一种验证形式 有什么方法可以防止按下 确定 按钮时警报视图消失 场景 我在警报视图中有 2 个用于用户名 密码的文本字段 如果两者都是空并且用户按 确定 我不希望警报被解除 iOS 5 引入了一个新属性UIAlertView来准确处理这
  • 从哪里开始使用 CPanel 托管在 PHP 中运行命令行

    我正在查看一些 PayPal 脚本 代码示例 其中很多需要通过命令行运行的 php 脚本 我以前从未在 PHP 中从命令行运行过任何东西 所以根本不知道从哪里开始 我不知道我是否使用了正确的搜索词 因为谷歌没有帮助我回答 我是否需要使用不同
  • 如何安全地读取不受信任的 Clojure 代码(不仅仅是一些序列化数据)?

    def evil code str slurp mnt src git clj clojure src clj clojure core clj def r read string evil code 有效 但不安全 def r cloju
  • 为已安装的 Rails 引擎设置 default_url_options

    使用 Rails 3 2 13 和 spree 2 0 2我遇到过类似的问题动态范围内的导轨安装式发动机 我的路线 scope locale locale en jp do mount Spree Core Engine at store
  • 推送或弹出时应用程序在 ios 8 上冻结

    我的应用程序有一个大问题 主要是在 iOS 8 上 因为我们在其他 iOS 版本上没有发现这一点 当推送到新的视图控制器或弹出到以前的视图控制器时 它有时会冻结 但奇怪的是 如果您按主页按钮并从后台启动应用程序 它会运行一点 这里我的意思是
  • 如何正确处理 R 中的转义 Unicode 字符破折号 (—)

    我在处理 R 中转义的 unicode 字符时遇到问题 特别是从 MediaWiki API 获取信息时遇到的问题 我会找到一个 JSON 字符串 例如 query categorymembers ns 0 title Banach u20
  • 有哪些 iPhone 推送通知服务? (托管服务,而不是 APNS)[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心以获得指导 在处理 Apple 的推送
  • 分析蓝牙低功耗流量

    在尝试研究 BLE 时 我想知道是否可以通过 Wireshark 和 snort 等工具对其进行分析 我遇到过一个名为 ubertooth 的 USB 设备 我们需要购买该设备才能在 BLE 框架上执行 DPI 对吧 是否可以在 Wires
  • 如何在 zend Framework 2 中创建工厂?

    in my Module php我有以下方法 我想将它们移动到factory class这样我就不会弄乱Module class public function getControllerConfig return array factor
  • 图形 API 新提要帖子对象 - 附件未显示

    我在图形 API 方面遇到了一个奇怪的问题 下面的代码曾经帮助我将帖子添加到用户新闻提要中 并附带所附照片的缩略图 在 object attachment 参数中引用 然而现在帖子已按预期创建 但缩略图为空 我正在使用的 photo id
  • python 类层次结构问题

    我有一个类层次结构 class ParentClass def do something self pass child classes have their own implementation of this class ChildCl
  • 将参数从 C++ 传递到 QML

    我想将一些参数从 C 传递到 QML 以便 QML 可以用它们做一些事情 有点像这样 void MyClass myCplusplusFunction int i int j emit mySignal i j 在 QML 中 每次mySi
  • Gradle 不会复制测试资源来构建

    我有一个多项目 gradle 项目 spring web 具有以下布局 springweb build gradle settings gradle services build gradle src main java src main
  • 如何在 PL/SQL 中对关联数组进行排序?

    我有一个像这样的关联数组 continent population Australia 30 continent population Antarctica 90 continent population UK 50 如何在 PL SQL
  • 没有 .jpg 的 Fancybox 网址无法在框中打开

    我在这里看到了类似的问题 我已经尝试了所有提供的解决方案 但没有一个有效 我已正确包含所有链接 首先是 jquery 链接 我检查了 在文档的开头 我声明了 fancybox 如下所示 我的代码是 echo a class fancybox
  • 什么是调试器以及它如何帮助我诊断问题?

    这是一个通用问题 旨在帮助那些遇到程序问题但不知道如何使用调试器来诊断问题原因的新程序员 这个问题涵盖三类更具体的问题 当我运行我的程序时 它不会根据我给它的输入产生我期望的输出 当我运行程序时 它崩溃并给我一个堆栈跟踪 我有检查堆栈跟踪
  • C++:如何将 double 舍入为 int? [复制]

    这个问题在这里已经有答案了 我有一个双精度数 称之为x 本来是55 但实际上存储为54 999999999999943157 我刚刚意识到 所以当我这样做时 double x 54 999999999999943157 int y int
  • 未捕获的 DOMException:无法在“CommandLineAPI”上执行“$”:不是有效的选择器

    我正在使用 selenium 为我的网页编写自动化 UI 测试 我正在测试的网页上有一个元素 lt lt input type checkbox id screening questions 0 multiple choice 0 deal
  • primefaces 行编辑中的 event.getObject() 将旧值发送到 bean

    我正在尝试使用素面的功能 该功能允许用户编辑表本身中的行数据 我已按照此链接来实现它 http www primefaces org showcase ui datatableRowEditing jsf 当我说编辑用户时 输入的新值不会发
  • 在 angularjs 工厂中使用 setInterval

    我正在尝试 angularjs 文档中给出的代码 此处给出 http jsfiddle net zGqB8 它只是实现一个时间工厂并使用 timeout 每秒更新时间对象 angular module timeApp factory tim