通过for循环出来的element-ui中dialog弹框会叠加多次的解决方法
前提是已经引入了vue.js, element-ui.js,element-ui.css<link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css"><script src="https://cdn.jsdelivr.net/npm/vue@2.6.14/dist/vue.
·
前提是已经引入了vue.js, element-ui.js,element-ui.css
<link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
<script src="https://cdn.jsdelivr.net/npm/vue@2.6.14/dist/vue.js"></script>
<script src="https://unpkg.com/element-ui/lib/index.js"></script>
以下代码是根据element改的,在循环里控制弹框v-if选择显示隐藏就行,dialogVisible = true放到了方法里面
举个栗子:::
<body>
<div id="show" class="show">
//循环出dialog事件
<template v-for="(pet,index) in 5">//遇到的问题:这个后面跟不了key
//展示点击
<el-button type="text" @click="popover(index)">
<div class="img-tiem">
<img class="img" :src="pet.img" alt="">
<div class="msg-box">
<div>2021.11.25</div>
<div class="msg">dfafa</div>
</div>
</div>
</el-button>
//弹出框
<el-dialog style="font-size: 28px;font-weight: bold;color: #000000;" :visible.sync="dialogVisible" width="40%" :show-close="false" v-if="cur == index">
<img :src="pet.img" alt="">
<div style="margin-top: 2rem;">2021.11.25</div>
<div style="margin-top: 2rem;">dfafa</div>
</el-dialog>
</template>
</div>
</body>
<script>
export default {
data() {
return {
dialogVisible: false,
cur: 0,
};
},
methods: {
popover(index) {
this.cur = index
this.dialogVisible = true
}
}
}
</script>
更多推荐
已为社区贡献2条内容
所有评论(0)