前提是已经引入了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>

Logo

前往低代码交流专区

更多推荐