vue页面DOM操作失效如何处理

这次给大家带来vue页面DOM操作失效如何处理,处理vue页面DOM操作失效的注意事项有哪些,下面就是实战案例,一起来看一下。

现象:

使用Element UI渲染了一个树形结构,设计在鼠标移入每个节点是显示其中的操作按钮,效果如下:

vue页面DOM操作失效如何处理

下面是出错部分:

在新增节点后移入新增节点附近(图中是移入一级2),功能按钮的显示位置出现偏移

vue页面DOM操作失效如何处理

原因查找:

经过调试发现是在新增节点后,执行DOM操作获取节点时,取到的仍是之前的结构,新增的节点并未获取到。

原因分析:

猜测是vue使用的虚拟DOM,使得页面虽然已经渲染出来,但在Vue实例中让处在在虚拟DOM中,无法获取。

解决方法:

使用Vue.nextTick,看下官方材料:

vue页面DOM操作失效如何处理

‘在下次 DOM 更新循环结束之后执行延迟回调’,这句话不是特别理解,不过可以看出DOM更新是一个循环的过程,在过程结束之前无法获取到真实的DOM元素(至于这个循环是多久,还在探索中)。而将DOM操作放在nextTick中操作便可以获取到更新后的DOM。

结果:

依据上述原理,将DOM操作的函数在更新数据后在nextTick里调用,实现了理想中的效果。

vue页面DOM操作失效如何处理

vue页面DOM操作失效如何处理

vue页面DOM操作失效如何处理

相信看了本文案例你已经掌握了方法,更多精彩请关注【创想鸟】其它相关文章!

推荐阅读:

JS把链接生成二维码图片方法分析

Vue动态创建与删除数据步骤详解

以上就是vue页面DOM操作失效如何处理的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2762835.html

(0)
上一篇 2025年3月8日 10:02:20
下一篇 2025年2月27日 00:16:11

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • npm中install出现权限问题如何处理

    这次给大家带来npm中install出现权限问题如何处理,npm中install出现权限问题处理的注意事项有哪些,下面就是实战案例,一起来看一下。 这是因为我手贱升了个级,升到了最新的5.3.0。升级之后应该在install后面加上–no-…

    2025年3月8日
    200
  • 微信小程序商品详情页中如何添加弹出框

    这次给大家带来微信小程序商品详情页中如何添加弹出框,微信小程序商品详情页中添加弹出框的注意事项有哪些,下面就是实战案例,一起来看一下。 电商项目中商品详情页,加入购物车或者下单时可以选择商品属性的弹出框,通过设置view的平移动画,达到从底…

    编程技术 2025年3月8日
    200
  • 详解JS浮点数运算处理(图文教程)

    本篇文章主要介绍了js–浮点数运算处理,现在分享给大家,也给大家做个参考。感兴趣的小伙伴们可以参考一下。 一. 问题描述 最近在做一个项目,页面上会存在一些JS浮点数的运算,发现JS浮点数运算存在一些bug.譬如: 0.1+0.…

    编程技术 2025年3月8日
    200
  • 利用js实现事件处理模型

    本篇文章主要介绍了利用js实现事件处理模型,对初学这具有一定的参考价值,感兴趣的小伙伴们可以参考一下。 在各种浏览器中存在四种事件模型:原始事件模型、标准事件模型、IE事件模型,还有一种Netscape4事件模型,下面具体介绍一下。 1、目…

    编程技术 2025年3月8日
    200
  • vue :src 文件路径错误问题如何处理

    这次给大家带来vue :src 文件路径错误问题如何处理,处理vue :src 文件路径错误问题的注意事项有哪些,下面就是实战案例,一起来看一下。 首先先说明下vue-cli的assets和static的两个文件的区别,因为这对你理解后面的…

    2025年3月8日
    200
  • Ajax请求二进制流进行处理(ajax异步下载文件)

    ajax请求一个二进制流(文件),转换为blob进行处理或者下载保存文件 需求 管理后台需要随时下载数据报表,数据要实时生成后转换为excel下载。 文件不大,页面放置“导出”按钮,点击按钮后弹出保存文件对话框保存 说明:第一种方法使用a标…

    编程技术 2025年3月8日
    200
  • ajax前台后台跨域请求处理方式(图文教程)

    本篇文章通过前台跨域请求处理以及后台跨域的数据处理方式介绍,详细分析了ajax跨域的问题,对此有需要的朋友学习下。 跨域请求需要借助后台代码接收callback回调函数,对json数据进行进一步处理;前台再用ajax请求向服务器发送call…

    编程技术 2025年3月8日
    200
  • async/await地狱问题处理

    这次给大家带来async/await地狱问题处理,async/await地狱问题处理的注意事项有哪些,下面就是实战案例,一起来看一下。 前言 async/await是什么 async/await可以说是co模块和生成器函数的语法糖。用更加清…

    2025年3月8日
    200
  • node+bootstrap如何搭建论坛

    这次给大家带来node+bootstrap如何搭建论坛,node+bootstrap搭建论坛的注意事项有哪些,下面就是实战案例,一起来看一下。 前言 在学习了koa2和express并写了一些demo后,打算自己写一个项目练练手,由于是在校…

    2025年3月8日
    200
  • Vue按键修饰符处理事件步骤详解

    这次给大家带来vue按键修饰符处理事件步骤详解,vue按键修饰符处理事件的注意事项有哪些,下面就是实战案例,一起来看一下。 按键修饰符 在 PC 端开发时, 我们常常会遇到类似的需求, 比如用户按下 enter 键时提交表单, 没有用按键修…

    编程技术 2025年3月8日
    200

发表回复

登录后才能评论