解决在el-dialog中无法正确获取DOM的问题

 更新时间:2024年03月06日 10:20:04   作者:Naaaano  
这篇文章主要介绍了解决在el-dialog中无法正确获取DOM的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

在el-dialog中无法正确获取DOM

今天工作中有个需求是,在一个弹出框里放Echarts图表。

众所周知Vue里是在mounted生命周期里才能获取到DOM,于是我理所应当的:

mounted() {
	let diameter= document.getElementById("diameter");
	let diameterOption = {...};
	echarts.init(diameter).setOption(diameterOption);
}

报错,找不到DOM,无法生成echarts。但mounted里不应该发生这种情况的,所以只有一种可能性:那就是el-dialog和v-if一样,采用默认不生成DOM的方式,只有在弹框出现时才会生成。

知道了问题所在,就好解决了:

// 弹框的触发事件
showDialog() {
	this.isDialogShow = true;
	this.$nextTick(() => {
		let diameter= document.getElementById("diameter");
		let diameterOption = {...};
		echarts.init(diameter).setOption(diameterOption);
	})
}

注意一定要在控制dialog的布尔值变为true后调用nextTick,这样就能顺利获取到DOM啦~

关于在el-dialog中获取DOM节点

场景

需求要求在el-dialog中获取页面中的DOM节点

问题

直接document.getElementById获取的节点为undefined

解决

在获取DOM节点代码外层添加$nextTick()即可

代码如下:

总结

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

相关文章

  • vue如何实现点击选中取消切换

    vue如何实现点击选中取消切换

    这篇文章主要介绍了vue实现点击选中取消切换,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05
  • 手把手教你用vue3开发一个打砖块小游戏

    手把手教你用vue3开发一个打砖块小游戏

    这篇文章主要给大家介绍了关于如何利用vue3开发一个打砖块小游戏的相关资料,通过一个小游戏实例可以快速了解vue3开发小游戏的流程,需要的朋友可以参考下
    2021-07-07
  • 基于 Vue 的树形选择组件的示例代码

    基于 Vue 的树形选择组件的示例代码

    本篇文章主要介绍了基于 Vue 的树形选择组件的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08
  • 通过实例解析vuejs如何实现调试代码

    通过实例解析vuejs如何实现调试代码

    这篇文章主要介绍了通过实例解析vuejs如何实现调试代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-07-07
  • vue本地打开build后生成的dist文件夹index.html问题

    vue本地打开build后生成的dist文件夹index.html问题

    这篇文章主要介绍了vue本地打开build后生成的dist文件夹index.html问题,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友参考下吧
    2019-09-09
  • 通过vue-cli3构建一个SSR应用程序的方法

    通过vue-cli3构建一个SSR应用程序的方法

    这篇文章主要介绍了通过vue-cli3构建一个SSR应用程序,以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
    2018-09-09
  • vue-cli下的vuex的简单Demo图解(实现加1减1操作)

    vue-cli下的vuex的简单Demo图解(实现加1减1操作)

    这篇文章主要介绍了vue-cli下的vuex的简单Demo(实现加1减1操作),本文图文并茂给大家介绍的非常详细,具有参考借鉴价值,需要的朋友可以参考下
    2018-02-02
  • vue实现前端保持筛选条件到url并进行同步参数设计

    vue实现前端保持筛选条件到url并进行同步参数设计

    这篇文章主要为大家介绍了vue实现前端保持筛选条件到url并进行同步参数设计思路详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-08-08
  • vue单文件组件lint error自动fix与styleLint报错自动fix详解

    vue单文件组件lint error自动fix与styleLint报错自动fix详解

    这篇文章主要给大家介绍了关于vue单文件组件lint error自动fix与styleLint报错自动fix的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-01-01
  • 详解vue几种主动刷新的方法总结

    详解vue几种主动刷新的方法总结

    这篇文章主要介绍了详解vue几种主动刷新的方法总结,文中详细的介绍了几种方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-02-02

最新评论