vue.js

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript类库 > vue.js > vue中onmounted周期里获取不到dom原因

vue中onmounted周期里获取不到dom的原因及分析

作者:zn_firm

这篇文章主要介绍了vue中onmounted周期里获取不到dom的原因及分析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

vue onmounted周期里获取不到dom的原因

在onmounted里可以获取到任意一个静态的dom,注意,这里说的是静态dom,对于动态dom,他是获取不到的

动态dom有2种情况

1)带有v-if指令,获取不到值为false的那个dom

2)带有v-for指令,当初始化时,要循环的数组没有值,这个时候是获取不到相关dom的

重点:

有v-show指令时,即使值为false,依旧能获取到相应的dom,切记他和v-if不一样

解决方法

1)在nexttick中获取dom

2)在onUpdated中获取dom

vue3获取dom遇到的坑

项目前端引入manco.editor 的时候,如果要获取代码编辑器内的内容的话,需要使用toRaw获取源dom才可以获取到值。

比如getValue(),如果直接用editor.value去获取就会有问题。

以及v-if中的值在改变的时候会重新刷新组件以及重置dom。

v-show不会重置dom。所以选择使用。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文