vue.js 您所在的位置:网站首页 html弹框代码 vue.js

vue.js

2023-03-13 11:48| 来源: 网络整理| 查看: 265

vue.js - VUE2对话框没弹出来的时候通过ref找不到对话框内部的元素?

 

问题描述: ....

如题,我想对话框弹出之前,想清空input,img的内容

this.$refs.preView.src =""; this.$refs.photoFile.value="";

this.$refs里找不到preView,photoFile这个是啥子原理

 

第 1 个答案:

这是因为对话框弹出之前没这个这个DOM, 既然都使用Vue了, 为什么还要操作DOM呢 ,完全可以这么写以img举例, :弹出前:this.imgSrc = ''

 

第 2 个答案:

在 Vue 2 中,当对话框还没有弹出来时,其内部的元素是无法通过 ref 找到的。这是因为 Vue 组件在初始化时,还没有被挂载到 DOM 上,所以无法访问到组件内部的 DOM 元素。

如果你需要在对话框弹出后访问对话框内部的元素,可以考虑在对话框的 shown 事件中进行操作,该事件会在对话框显示出来后被触发。例如:

vueCopy code

export default { data() {

return { dialogVisible: false }

}, methods: {

onDialogShown() { // 对话框显示后,可以访问对话框内部的元素 const dialogContent = this.$refs.dialogContent // ... }

}}在上面的示例中,我们在对话框的 shown 事件中访问了对话框内部的元素,通过 $refs 获取了对话框内容的 DOM 元素。当对话框显示出来后,该事件会被触发,我们就可以在事件处理函数中访问对话框内部的元素了。

下一节:前端 - nuxt 进行 build 的时候提示 no such file or directory 错误?

在开发时候正常,但是打包时出现错误实际上 about.vue 这个文件是存在的,查看出错的位置也就是 fs.readFileSyn ...



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有