位置: 编程技术 - 正文

浅谈Angular 中何时取消订阅(angular1)

编辑:rootadmin

推荐整理分享浅谈Angular 中何时取消订阅(angular1),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:angular nz,angular deviation,angular then,angular1,angular nz,angular then,angular1,angular then,内容如对您有帮助,希望把文章链接给更多的朋友!

你可能知道当你订阅 Observable 对象或设置事件监听时,在某个时间点,你需要执行取消订阅操作,进而释放操作系统的内存。否则,你的应用程序可能会出现内存泄露。

接下来让我们看一下,需要在 ngOnDestroy 生命周期钩子中,手动执行取消订阅操作的一些常见场景。

手动释放资源场景

表单

以上方案也适用于其它的表单控件。

路由

Renderer 服务

Infinite Observables

当你使用 interval() 或 fromEvent() 操作符时,你创建的是一个无限的 Observable 对象。这样的话,当我们不再需要使用它们的时候,就需要取消订阅,手动释放资源。

Redux Store

无需手动释放资源场景

AsyncPipe

当组件销毁时,async 管道会自动执行取消订阅操作,进而避免内存泄露的风险。

Angular AsyncPipe 源码片段

浅谈Angular 中何时取消订阅(angular1)

@HostListener

需要注意的是,如果使用 @HostListener 装饰器,添加事件监听时,我们无法手动取消订阅。如果需要手动移除事件监听的话,可以使用以下的方式:

Finite Observable

当你使用 HTTP 服务或 timer Observable 对象时,你也不需要手动执行取消订阅操作。

timer 操作符

操作符签名

操作符作用

timer 返回一个发出无限自增数列的 Observable,具有一定的时间间隔,这个间隔由你来选择。

操作符示例

最终建议

你应该尽可能少的调用 unsubscribe() 方法,你可以在RxJS: Don't Unsubscribe 这篇文章中了解与 Subject 相关更多信息。

具体示例如下:

takeUntil 操作符

操作符签名

操作符作用

发出源 Observable 发出的值,直到 notifier Observable 发出值。

操作符示例

标签: angular1

本文链接地址:https://www.jiuchutong.com/biancheng/377421.html 转载请保留说明!

上一篇:深入理解Angular4订阅(Subscribe)与取消(深入理解计算机系统)

下一篇:vue.js模仿京东省市区三级联动的选择组件实例代码(京东试用js脚本)

  • 长租公寓 税费
  • 税盘收费吗
  • 研发费用加计扣除是什么意思啊
  • 单位买了一批空调怎么办
  • 现金预算属于营业预算吗
  • 为客户购买的机票怎么退
  • 小规模纳税人资产负债表和利润表
  • 篮球俱乐部是非洲的吗
  • 个人所得税怎么扣
  • 进项税加计抵减生产性服务
  • 销项负数发票原发票还有用吗?
  • 验签失败的发票追不回来怎么办
  • 出口供货企业
  • 退款给客户怎么记分录
  • 私立医院增值税税率是多少
  • 餐饮费发票税率是多少
  • 公司注销要给钱吗
  • 企业的无形资产包括哪些内容
  • 股权转让怎么交个人所得税
  • 资产无偿划转怎么开具发票
  • 其他应付款和其他应交款区别
  • 应收账款账面价值小于计税基础
  • 进项已抵扣发票作废账务处理
  • 增值税转出未交增值税是什么意思
  • 电脑很空但是占用率90
  • 单位话费谁负责交
  • linux怎样使用
  • 无法连接到你的相机,请重启手机
  • 龙骨花的养殖方法移植
  • 纳税申报方式的税务申报工作常规流程图
  • php验证电子邮件格式
  • 无偿占用资金企业有哪些
  • php下载功能
  • cjzc框架
  • php访问数据库的方式
  • 补提所得税费用可以直接计入当期
  • 环境检测费计入什么费用
  • php 注入
  • 火车票抵税申报表怎么填
  • phpcms v9网页禁止复制
  • sqlserver还原数据库一直显示正在执行0%
  • 金税盘问题
  • 企业税金及附加包括什么
  • 公司被吊销营业执照的法律后果是什么?
  • 上月结转余额怎么做会计分录
  • 城建税的减免规定有哪些
  • 总结哪些纳税人可以采用简易计税方法
  • 主营业务成本账户属于什么账户
  • 内部往来科目设置在哪类下
  • 银行承兑的购买
  • 不需要计提折旧的情况
  • 委托生产产品
  • 收到银行结息收入怎么做会计分录
  • 财务会计与预算会计差异如何处理
  • 银行固定资产有哪些
  • 被遗忘的战役
  • 怎么判断win7还是win10
  • VMware虚拟机中卸载java命令
  • ubuntu可以不关机吗
  • Win10如何打开软键盘
  • edge新版浏览器
  • win8账户锁定无法登录
  • node.js cookie-parser之parser.js
  • 好看的css样式代码
  • javascript例题
  • 批量修改ssh配置端口
  • SendTo增强版 批处理实用小工具
  • 输出中断
  • android四大组件的作用
  • javascript 二维数组搜索
  • jquery怎么修改样式
  • 陷阱类过关游戏
  • 新办企业没有员工要报个人所得税吗
  • 被认为是税务风险的原因
  • 消费税由消费者承担吗
  • 税务询问笔录属于什么证据
  • 煤炭资源税税率选煤税率多少黑龙江
  • 税控发票开票软件(金税盘版)打不开?
  • 河南省优秀班主任2022
  • 贵阳市税务电话
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设