vue自定义div弹窗打开失败

在写自定义div弹窗的时候,实现类似el-dlaig打开关闭的效果。

1. showDialog的时候 div怎么也打不开,并且页面中也没有插入那块dom;

2. dialogVisible默认是true的时候是能正常展示div的

解决办法:类似el-dlalog的appen-to-body属性

找到对应源码

 

CV一下

 

成功解决!

 

<!--
 * @Description: 百度地图点聚合点位详情弹窗 页面
 * @Author: mhf
 * @Date: 2024/9/29 13:37
-->
<template>
  <div class="bd-cluster-detail-dialog" v-if="dialogVisible">
    详情
    <el-button type="primary" @click="hideDialog">buttonCont</el-button>
  </div>
</template>

<script>
export default {
  name: "bdClusterDetailDialog",
  components: {},
  props: {
  },
  data() {
    return {
      dialogVisible: false,
    };
  },
  methods: {
    showDialog(data) {
      this.$message.success("打开")
      this.dialogVisible = true
      document.body.appendChild(this.$el);
    },

    hideDialog() {
      this.dialogVisible = false;
    },
  },
  created() {
  },
  mounted() {
  },
};
</script>

<style lang="scss" scoped>
.bd-cluster-detail-dialog {
  width: 400px;
  height: 600px;
  border: 1px solid red;
  z-index: 20000 !important;
  position: absolute;
  right: 100px;
  top: 100px;
}
</style>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值