位置: 编程技术 - 正文

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

编辑:rootadmin

推荐整理分享深入理解Angular4订阅(Subscribe)与取消(深入理解计算机系统),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:深入理解计算机系统 电子书,深入理解新发展理念,推进供给侧结构性改革 的题目,深入理解新发展理念,推进供给侧结构性改革 的题目,深入理解新发展理念心得体会3篇,深入理解中国式现代化,深入理解新发展理念,推进供给侧结构性改革,深入理解新发展理念,深入理解计算机系统,内容如对您有帮助,希望把文章链接给更多的朋友!

订阅(Subscribe)

写过js的都知道,subscribe在很多地方都能看到它的身影,并且起到了很重要的作用。侦听http请求的返回,页面间传递参数… …说起订阅,就不能不提Observable,说起Observable就不能不提Subscribable… …等等,扯太远了。回到正题,subscribe是Observable类下的一个函数。从Observable的中文名:”可观察的”就能看出,Observable的作用是可以起到类似监听的作用,但它的监听往往都是在跨页面中,举个栗子:

以上描述了一个简单业务的代码:在列表页中点击一个元素项,然后跳转进入该元素的详细页,并在详细页中取到该元素的id。这时候,我们可以看到,订阅事件派上用场了。

取消订阅(Unsubscribe)

这时候我在想,JAVA里面为了内存溢出,建议我们读写文件的流要关闭,对象要置空,那订阅是否要取消呢?在官方文档上,我们看到一句话:

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

那就是说,组件的钩子会帮我们取消订阅,不需要我们取消。好吧,你说啥就是啥。这天(当然就是我写博客的今天),我遇到了一个简单的需求:用户在‘用户信息'页面点击‘修改资料'按钮跳转到修改资料的表单页。当然表单的初始信息就是用户未更改信息前的,这个没问题。然后呢,为了尽量少发无用的请求(没改动资料也允许用户提交),我就在DoCheck钩子里面判断,如果资料前后不相同就让按钮可以点击,上代码:

好了,保存代码后,当我欢喜的去看控制台结果的时候:

每条红线,代表我改变了一次表单,请看图找规律~找你妹!

可以发现,更改n次表单时,会产生n+1条log,并且是n+1条更改后的表单信息。虽然官方说不需要取消订阅,但是如果在移动端快速产生那么多订阅对象,难免保证一定不会没有问题出现,并且作为有理想有追求的程序狗,是无法忍受这种不完美的情况出现的。

于是乎在回调函数中,加上了:

这时候,恢复理想状态,搞定收工!

说真的,规范的代码不仅仅可以让代码的可读性提高,让逻辑变得更清楚,让女神倾慕,让老板涨工资… …最重要的是可以让程序避免出可避免的错误,很多注意点还是要注意的。

标签: 深入理解计算机系统

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

上一篇:利用vue + koa2 + mockjs模拟数据的方法教程(利用职务之便谋取私利是什么罪)

下一篇:浅谈Angular 中何时取消订阅(angular1)

  • 个体户超过了核定征收额怎么交税
  • 小微企业年度所得税优惠政策
  • 大巴车怎么进行营运
  • 计提跌价的存货卖出了
  • 购进石料再加工算自产吗
  • 企业所得税季报可以更正吗
  • 特殊行业包括哪些
  • 购入免征车船税吗
  • 财务报税表格
  • 在产品,半成品,产成品是什么意思
  • 收到客户用房抵货款怎么办
  • 印刷品生产需要生产许可证吗?
  • 视同销售应付福利费账务处理是怎样的?
  • 意外险部分费用怎么算
  • 税控盘服务费跨年还能抵吗
  • 工会筹备金怎么改成工会经费
  • 哪些项目可以不报建
  • 银行利息现金流量表什么科目
  • 建筑业分包抵扣
  • 对公账户收到个人汇款 退还
  • 固定资产无偿移交怎么做账
  • 外贸过程中的银行是什么
  • 主营业务税金及附加包括什么
  • 支付税点是什么意思
  • 库存商品结转会计分录
  • 个人社保和公积金扣款公司七个人三怎么样
  • php获取文件扩展内容
  • php命名空间
  • php自动下载文件到本地
  • scdeploy.exe
  • 金融公司呆账对当事人有什么影响
  • mysql如果不存在就创建表
  • 多开票金额会计分录
  • elements vue
  • framework怎么用
  • 股权转让有溢价怎么做账
  • Vue Admin Template关闭eslint校验,lintOnSave:false设置无效解决办法
  • php中session什么意思
  • phpseclib
  • 长期借款业务会亏损吗
  • php实现base64图片上传方式实例代码
  • 增值税专票怎么作废
  • 交通费补贴与报销的区别
  • rgb to hex
  • 命令行 压缩
  • 特殊动产的一物数卖履行顺序
  • 增值税在纳税申报表中怎么得出
  • 税务清单打印不全
  • 高速费会计分录怎么写
  • 人工安装费是几个点税税率
  • 百万级别数据库mysql
  • mysql数据库简单介绍
  • 等线支付给劳务派遣单位的工资怎么做账?
  • 公司注册登记需要多少钱
  • 注册资本认缴制的利弊
  • 稽查跨年进项税额转出要调整所得税吗
  • 固定资产清理产生的收入计入
  • 企业进出口总额
  • 银行存款日记账怎么填
  • 结转存货跌价准备是什么意思
  • 增值税进项税额在借方还是贷方
  • 企业收到稳岗补贴需要交企业所得税吗
  • 研发费用是管理费用的比例多少不正常
  • MySQL PXC构建一个新节点只需IST传输的方法(推荐)
  • mysql运行代码
  • macbookzen
  • win7如何显示桌面
  • linuxu
  • android环境搭建实训心得
  • Android游戏开发书籍
  • html模板 js
  • oracle安装使用
  • ftp下载工具能自动登录ftp服务器
  • python的介绍
  • python通过编程求权重
  • 科级干部试用期一年转正流程
  • 豪车消费税的征税范围
  • 建筑企业所交的税项有多少
  • 江苏电子口岸卡邮寄大概需要多久
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设