当element ui el-dialog弹窗有缓存,每次打开弹窗的时候会出问题。如下是解决方案!!!
解决方法:
如下是解决方案。用el-dialog 里面有一个
destroy-on-close
(关闭时销毁 Dialog 中的元素)这个完全没用。其实很简单。只需要在 el-dialog 外层加一层div 然后在 div 上写上 v-if="dialogVisible"就行了。
<template>
<div v-if="dialogVisible">//加一层div 就可以了写上 v-if
<el-dialog
title="提示"
:visible.sync="dialogVisible"
width="30%"
:before-close="handleClose">
<span>这是一段信息</span>
<span slot="footer" class="dialog-footer">
<el-button @click="dialogVisible = false">取 消</el-button>
<el-button type="primary" @click="dialogVisible = false">确 定</el-button>
</span>
</el-dialog>
</div>
</template>
理解:
也就是说,当显示参数 dialogVisible = true
时,先创建 el-dialog 组件,由于 dialogVisible = true
,也因此可以显示,由于是新创建的 el-dialog 组件,那么所有的 el-dialog 数据是新的,缓存数据也无从影响当前显示的新 el-dialog 组件,v-if
的灵活用法 —— v-if
标签是当 true
时,创建组件,否则一定不会去浪费资源去创建一个当前是 false
的组件,这一点不同于 v-show
标签,v-show
会先创建组件,如果值是 false
,则不会显示组件给人看到,而是隐藏组件,值为 true
时,则是会显示组件。文章来源:https://www.toymoban.com/news/detail-764515.html
参考链接
当element ui el-dialog弹窗有缓存,每次打开弹窗的时候会出问题。如下是解决方案文章来源地址https://www.toymoban.com/news/detail-764515.html
到了这里,关于当element ui el-dialog弹窗有缓存,每次打开弹窗的时候会出问题的解决方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!