前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >vue归纳笔记:对vue中nextTick()的理解及应用场景说明

vue归纳笔记:对vue中nextTick()的理解及应用场景说明

作者头像
用户1272076
发布于 2019-06-13 04:48:57
发布于 2019-06-13 04:48:57
96100
代码可运行
举报
文章被收录于专栏:张培跃张培跃
运行总次数:0
代码可运行
异步更新队列:

请记住:vue是依靠数据驱动视图更新的,该更新的过程是异步的。即:当侦听到你的数据发生变化时, Vue将开启一个队列(该队列被Vue官方称为异步更新队列)。视图需要等队列中所有数据变化完成之后,再统一进行更新。

示例:

代码语言:javascript
代码运行次数:0
运行
复制
<div id="myApp">    <input type="button" value="点我呀" @click="changeStr">    <p ref="myP">{{str}}</p></div><script>    new Vue({        el:"#myApp",        data:{            str:"公众号 张培跃,关注它的人很少!"        },        methods:{            changeStr(){                this.str = "欢迎关注公众号 张培跃,收看更多精彩内容!";                // 输出结果:公众号 张培跃,关注它的人很少!                console.log(this.$refs.myP.innerText)            }        }    })</script>

通过以上示例的输出结果可以有力证明:Vue 实现的响应式并不是数据发生变化之后视图立即变化。


获取更新之后的DOM

Vue官方为了避免开发者直接接触视图,鼓励大家以"数据驱动"的方式进行思考。但,现在的我们想基于更新后的视图来搞点事情,该如何下手?

我们可以使用 $nextTick(callback)。这里的回调函数( callback)将在数据更新完成,视图更新完毕之后被调用。

更改上个示例中的changeStr方法如下:

代码语言:javascript
代码运行次数:0
运行
复制
changeStr(){    this.str = "欢迎关注公众号 张培跃,收看更多精彩内容!";    this.$nextTick(()=>{        // 输出结果:我爱你中国,我亲爱的母亲!        console.log(this.$refs.myP.innerText);    });    this.str = "我爱你中国,我亲爱的母亲!"}

从输出的结果可以看出:我们可以通过 $nextTick() 获取到更新之后的 DOM

因为 $nextTick() 返回一个 Promise 对象,所以我们也可以使用async/await语法完成相同的事情:

代码语言:javascript
代码运行次数:0
运行
复制
changeStr:async function(){    this.str = "欢迎关注公众号 张培跃,收看更多精彩内容!";    this.str = "我爱你中国,我亲爱的母亲!"    await this.$nextTick();    console.log(this.$refs.myP.innerText);}

或者

代码语言:javascript
代码运行次数:0
运行
复制
changeStr(){    this.str = "欢迎关注公众号 张培跃,收看更多精彩内容!";    this.$nextTick().then(()=>{        // 输出结果:我爱你中国,我亲爱的母亲!        console.log(this.$refs.myP.innerText);    });    this.str = "我爱你中国,我亲爱的母亲!"}

应用场景

1、如果要在 created()钩子函数中进行的 DOM操作,由于 created()钩子函数中还未对DOM进行任何渲染,所以无法直接操作,需要通过 $nextTick()来完成。

代码语言:javascript
代码运行次数:0
运行
复制
created(){    this.$nextTick(()=>{        this.$refs.myP.innerText = "我是一只小小小小鸟,想要飞,却怎么样也飞不高!";    });}

注:在 created()钩子函数中进行的 DOM操作,不使用 $nextTick()会报错:

代码语言:javascript
代码运行次数:0
运行
复制
//  Error in created hook: "TypeError: Cannot set property 'innerText' of undefined"created(){    this.$refs.myP.innerText = "我是一只小小小小鸟,想要飞,却怎么样也飞不高!";}

2、更新数据后,想要使用js对新的视图进行操作时。示例(略)

3、在使用某些第三方插件时 ,这些插件需要dom动态变化后重新应用该插件,这时候就需要使用 $nextTick()来重新应用插件的方法。示例(略)

—————END—————

张培跃,收看更多精彩内容

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-06-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 张培跃 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
人员定位系统人员聚集风险监测预警功能为企业安全生产保驾护航!
近年来,因人员聚集而导致重大伤亡的事故时有发生,对此,国家高度重视。2023年10月,应急管理部印发《基于人员定位系统的人员聚集风险监测预警建设应用指南(试行)》,要求危化企业在建设人员定位系统基础上,对照指南要求,进一步提升人员定位精度,开发聚集预警模型算法,强化人员聚集风险管控,持续优化升级安全风险智能化管控平台相关模块,切实防控高危区域现场人员聚集风险。
新锐科创
2023/11/21
1.5K0
人员定位系统人员聚集风险监测预警功能为企业安全生产保驾护航!
GNSS RTK实时差分人员定位系统组成部分包括哪些?答案在这里
RTK(Real-Time Kinematic)即实时动态载波相位差分技术,GNSS RTK实时差分人员定位系统是一种广泛应用于各个领域、具有高精度实时定位功能的技术。该系统通过将全球卫星导航系统(GNSS)与无线通信技术相结合,实现对人员的精准定位。RTK实时差分人员定位系统由多个组件组成,包括卫星信号接收器(移动定位终端)、RTK差分基站、无线通信网络、服务器、后台管理系统等。
新锐科创
2023/07/28
7020
GNSS RTK实时差分人员定位系统组成部分包括哪些?答案在这里
室内外融合人员定位技术:提供全面而精确的定位服务
室内外融合人员定位是一项先进的技术,它能够准确地确定人员在室内和室外的位置。在过去,室内定位技术和室外定位技术是分别独立开发的,它们在特定环境中具有一定的优势,但无法实现全面的人员定位。然而,随着室内外融合人员定位技术的出现,这一问题得到了有效解决。
新锐科创
2023/06/05
7300
室内外融合人员定位技术:提供全面而精确的定位服务
北斗RTK差分定位原理、优势及应用领域
北斗卫星导航系统是中国自主建设的卫星导航系统,是继美国GPS、俄罗斯GLONASS和欧盟Galileo之后,全球第四个卫星导航系统。北斗系统非常重要,可用于国防、公共安全、民生等多个领域,包括交通运输、环境保护、渔业等。差分定位则是北斗系统中的一项重要功能,利用多个接收机来计算出相邻接收机之间的相对位置,以达到精确定位的目的。本文将介绍北斗RTK差分定位的原理以及在实际应用中的优势。
新锐科创
2023/05/31
2.1K0
北斗RTK差分定位原理、优势及应用领域
人员定位系统的功能及在不同领域的应用
人员定位系统是实时定位系统(RTLS)的一种,是用于跟踪人员位置的软硬件一体化系统。它使用无线通信技术和传感器来获取位置数据,并将其发送到监控中心或移动设备。它在多个领域使用,包括工业、医疗保健、军事、物流等。下面我们将讨论人员定位系统的功能及在不同领域的应用。
新锐科创
2023/05/31
5420
人员定位系统的功能及在不同领域的应用
4G+蓝牙+Lora融合定位在隧道中的应用
针对隧道定位痛点,新锐科创推出了4G+蓝牙+LoRa融合定位系统方案。该系统将4G的高速传输、蓝牙的高精度短距离定位以及LoRa的长距离低功耗传输优势相结合,为隧道提供了全面、精准、稳定的定位服务。
新锐科创
2025/03/19
1220
4G+蓝牙+Lora融合定位在隧道中的应用
@化工人|人员定位系统如何选择?从了解定位技术开始
伴随着科技日益发展,越来越多的化工企业选择建设以人员定位系统为核心的企业安全生产信息化管理平台,想要选择合适的人员定位系统也需从先了解人员定位技术开始。
新锐科创
2024/07/05
1820
@化工人|人员定位系统如何选择?从了解定位技术开始
BVS智能视频分析-智慧养老系统
据不完全统计,仅2017年,国家层面就有《智慧健康养老产业发展行动计划(2017-2020年)》《关于开展智慧健康养老应用试点示范的通知》等通知出台,鼓励智能产品适老化发展,鼓励开发面向老年人的健康管理类智能设备的内容。
倍特威视
2020/05/09
9580
BVS智能视频分析-智慧养老系统
NB-IoT+蓝牙+RTK人员定位方案的优势
随着人员定位技术的发展,融合定位技术开始出现。融合定位技术方案有很多种,不同的方案具有不同的优势,下面给大家介绍NB-IoT+蓝牙+RTK人员定位方案的优势。
新锐科创
2023/06/08
3530
NB-IoT+蓝牙+RTK人员定位方案的优势
智慧工地 AI 算法方案
用户11003665
2024/11/23
2950
智慧工地 AI 算法方案
「互联网+护理」最新行业政策解读
国家卫健委有关负责人指出,据国家统计局统计,截至2017年底,我国60岁及以上人口数为2.4亿人,占总人口的17.3%。我国患有慢性病的老年人有1.5亿人,占老年人总数的65%,失能、半失能的老年人4000万人左右。
齿轮易创说互联网
2019/03/15
1.5K0
「互联网+护理」最新行业政策解读
物联网(IoT)在企业应用中的三个例子
通过将物联网(IoT)设备集成到当前的IT基础设施中,企业能有良好的收益。而一旦通过设备捕获数据,并且分析和处理数据,才会发现物联网(IoT)的真正价值和影响。
无邪
2018/05/07
2.7K0
【极视角】315最强AI督查官上线ing!
3月的重头戏,一是妇女平权节,一是315打假日。前一个让世界认真聆听女性的声音,后一个则一次性给足了社会百姓全年的吃瓜量,从消费民生到媒体谣言,堪堪组成了个大型扒马甲现场。
极视角科技
2019/03/20
1K0
【极视角】315最强AI督查官上线ing!
石油开发企业部署人员定位系统的必要性及方案解析
石油开发企业作为危化行业的重要组成部分,作业环境的复杂性与危险性并存,使得人员定位管理成为企业运营管理中的关键难题。在当前科技不断进步的背景下,众多企业逐步意识到部署人员定位系统的重要性,对于石油开发企业而言,这更是一项具有战略意义的举措。本文将以RTK +蓝牙+ 4G融合定位系统为范例,深入阐释石油开发企业部署人员定位系统的必要性及该系统的卓越性能。
新锐科创
2025/03/24
220
石油开发企业部署人员定位系统的必要性及方案解析
有哪些主流的人员定位技术?答案在这里
人员定位技术是指一种用于确定一个或多个人员位置的技术方法。随着智能化、物联网等技术的不断发展,人员定位技术也越来越成熟和广泛应用。目前,常见的人员定位技术主要有以下几种:
新锐科创
2023/06/21
6440
有哪些主流的人员定位技术?答案在这里
RTK+UWB+蓝牙+4G融合定位在物业管理中的应用
针对物业管理人员定位痛点,新锐科创提出了北斗RTK+UWB+蓝牙+4G融合技术方案。该方案将四种定位技术有机结合,实现了室内外无缝高精度定位,为综合管廊人员定位提供了强有力的技术支持。
新锐科创
2025/03/20
440
RTK+UWB+蓝牙+4G融合定位在物业管理中的应用
【愚公系列】《工业数字孪生与企业应用实践》024-数字孪生在智慧工厂中的应用场景
随着工业4.0时代的到来,数字化转型已成为制造业发展的必然趋势。在这一进程中,数字孪生技术作为一种前沿的创新理念,正逐渐成为智慧工厂的重要组成部分。数字孪生通过创建物理实体的虚拟模型,使得企业能够实现实时监控、分析与优化,从而在生产效率、资源管理和决策支持等方面带来显著提升。
愚公搬代码
2025/02/09
1940
M91A安全帽识别布控球 安全帽穿戴AI视频分析功能
AI布控球基于前端边缘AI计算及后端云平台计算,AI布控球集成人脸识别、安全帽识别等的AI视频图像分析算法,通过计算机视觉技术对图像、人脸、场景、视频等进行深度学习,识别并标示图像、场景、视频内容,并对自定义的行为、意图进行识别并预警。 AI识别能力介绍: 着装检测:针对施工区域的人员是否戴安全帽。 人脸检测:针对施工区域的人员是否陌生人(黑名单)。 行为检测:针对施工区域内人员是否吸烟。 区域检测:针对规定的区域划线后检测是否在区域内或区域外。
全栈程序员站长
2022/08/30
2.1K0
M91A安全帽识别布控球 安全帽穿戴AI视频分析功能
洞察|大数据渗透到各行各业,融入教育或将取代高考
大数据的研究应用,到底与普通老百姓有多大关系?普通人能享受到多少大数据带来的便捷服务?在11月17日-18日的2016全球大数据应用研究论坛的分论坛上,“大咖”们描绘出我们眼前正在享受及未来将会享受到
灯塔大数据
2018/04/08
1.1K0
洞察|大数据渗透到各行各业,融入教育或将取代高考
GPS/北斗RTK差分定位系统的原理以及应用领域
导语:现代定位技术在国内外的发展与应用越来越广泛,其中GPS和北斗是两大被广泛使用的全球卫星定位系统。本文将介绍GPS/北斗RTK差分定位系统的原理以及其在各个领域的应用。
新锐科创
2023/08/04
1.1K0
GPS/北斗RTK差分定位系统的原理以及应用领域
推荐阅读
相关推荐
人员定位系统人员聚集风险监测预警功能为企业安全生产保驾护航!
更多 >
目录
  • 异步更新队列:
  • 获取更新之后的DOM
  • 应用场景
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档