" />

欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

如何解決Element UI el-dialog打開一次后無法再次打開問題

 更新時間:2024年02月29日 14:15:57   作者:大齡女程序員路在何方  
這篇文章主要介紹了如何解決Element UI el-dialog打開一次后無法再次打開問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

Element UI el-dialog打開一次后無法再次打開

APP.vue

<template>
    <div>
        我是子組件
        <el-button type="primary" size="mini" @click="openA">打開ADialog</el-button>
        <ADialog :avisible="visible" :key="key">
        </ADialog>
    </div>
</template>
 
<script>
import ADialog from '@/components/ADialog'
export default {
    data() {
        return {
            visible:false,
            key:Math.random(100)*100
        };
    },
    components:{
        ADialog
    },
    methods:{
        openA(){
            this.key = this.key +1
            this.visible = true
        }
    }
}
</script>
 
<style>
 
</style>

ADialog.vue

<template>
  <div v-if="visable">
    <el-dialog
      title="我是Adialog"
      :visible.sync="visable"
      width="30%"
      @close="handlerClose"
    >
      <span>我要打開B了</span>
      <el-button   type="primary" size="default" @click="openB"
        >打開Bdialog</el-button
      >
 
      <span slot="footer">
        <el-button @click="visable = false">Cancel</el-button>
        <el-button type="primary" @click="handlerOK">OK</el-button>
      </span>
    </el-dialog>
    <BDialog :bvisable="bvisable" :key="key"></BDialog>
  </div>
</template>
 
<script>
import BDialog from "@/components/BDialog";
export default {
  props: ["avisible"],
  data() {
    return {
      visable: this.avisible,
      bvisable: false,
      key:Math.random(100)*100
    };
  },
  components: { BDialog },
  methods: {
    handlerClose() {
      this.visable = false;
    },
    handlerOK() {
      this.visable = false;
    },
    openB(){
        this.key = this.key+1
        this.bvisable = true
        this.$forceUpdate()
    }
  },
};
</script>
 
<style>
</style>

BDialog.vue

<template>
  <div v-if="visiable">
        <el-dialog
            title="我是Bdialog"
            :visible.sync="visiable"
            width="20%"
            @close="handlerClose">
            <span></span>
            <span slot="footer">
                <el-button @click="visiable = false">Cancel</el-button>
                <el-button  @click="ok">OK</el-button>
            </span>
        </el-dialog>
        
  </div>
</template>
 
<script>
export default {
    props:[
        "bvisable"
    ],
    data() {
        return {
            visiable: this.bvisable,
        };
    },
    methods:{
        handlerClose(){
            this.visiable = false
        },
        ok(){
            this.visiable = false
        }
 
    }
}
</script>
 
<style>
 
</style>

在引用子組件的過程中加上:key就是給每一個vnode的唯一id,新的dialog就可以展示出來

父組件dialog中加上

子組件的dialog中加上

子組件調用的過程中加上:key

總結

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • Vue2.x中的Render函數(shù)詳解

    Vue2.x中的Render函數(shù)詳解

    通常開發(fā)vue我們使用的是模板語法,其實還有和react相同的語法,那就是render函數(shù),同樣支持jsx語法。Vue 的模板實際是編譯成了 render 函數(shù)。
    2017-05-05
  • vue3實現(xiàn)動態(tài)添加路由

    vue3實現(xiàn)動態(tài)添加路由

    這篇文章主要介紹了vue3實現(xiàn)動態(tài)添加路由方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-04-04
  • Vue 3.0自定義指令的使用入門

    Vue 3.0自定義指令的使用入門

    在 Vue 的項目中,我們經常會遇到 v-if、v-show、v-for 或 v-model 這些內置指令,它們?yōu)槲覀兲峁┝瞬煌墓δ堋3耸褂眠@些內置指令之外,Vue 也允許注冊自定義指令。接下來,將使用Vue 3官方文檔自定義指令章節(jié)中使用的示例,來一步步揭開自定義指令背后的秘密。
    2021-05-05
  • vue使用@scroll監(jiān)聽滾動事件時,@scroll無效問題的解決方法詳解

    vue使用@scroll監(jiān)聽滾動事件時,@scroll無效問題的解決方法詳解

    這篇文章主要介紹了vue使用@scroll監(jiān)聽滾動事件時,@scroll無效問題的解決方法,結合實例形式分析了@scroll監(jiān)聽滾動事件無效問題的原因及相應的解決方法,需要的朋友可以參考下
    2019-10-10
  • 使用Vue實現(xiàn)瀑布流的示例代碼

    使用Vue實現(xiàn)瀑布流的示例代碼

    這篇文章主要為大家詳細介紹了如何使用Vue實現(xiàn)瀑布流,文中的示例代碼講解詳細,具有一定的借鑒價值,感興趣的小伙伴可以跟隨小編一起學習一下
    2024-02-02
  • 在Vue項目中使用snapshot測試的具體使用

    在Vue項目中使用snapshot測試的具體使用

    這篇文章主要介紹了在Vue項目中使用snapshot測試的具體使用,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-04-04
  • 父子組件生命周期及子組件獲取數(shù)據(jù)傳值問題剖析

    父子組件生命周期及子組件獲取數(shù)據(jù)傳值問題剖析

    這篇文章主要介紹了父子組件生命周期及子組件獲取數(shù)據(jù)問題剖析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-10-10
  • Vue封裝全局toast組件的完整實例

    Vue封裝全局toast組件的完整實例

    組件(Component)是 Vue.js 最強大的功能之一,組件可以擴展 HTML 元素,封裝可重用的代碼,這篇文章主要給大家介紹了關于Vue封裝全局toast組件,需要的朋友可以參考下
    2021-07-07
  • Vue 簡單配置公用接口地址方式

    Vue 簡單配置公用接口地址方式

    這篇文章主要介紹了Vue 簡單配置公用接口地址方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • Vue3設計思想及響應式源碼解析

    Vue3設計思想及響應式源碼解析

    這篇文章主要為大家介紹了Vue3設計思想及響應式源碼解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-11-11

最新評論