el-popver 点击触发和使用方法触发

el-popver 点击触发和使用方法触发

  • 当点击按钮的时候,上传文件浮窗要显示,当再次点击按钮时,浮窗要关闭
  • 浮窗处于显示状态时,点击其它空白区域,浮窗要关闭
  • 可以通过js代码的方式主动的控制浮窗的显示(比如:上传文件时,就要主动的显示浮窗)
  • 如果按照官方文档仅仅设置visible属性,但是不监听事件,那点击其它地方,这个弹框不会关闭,因此需要监听这个事件,当点击空白区域的时候,关闭此弹框
<template>
    <div class="main">

        
        <!-- 这里可以直接使用v-model:visible = popoverShow-->
        <!-- 经过测试, 发现:点击reference的触发按钮,
                                  当popover未显示的时候, 会触发update:visible事件(携带的参数是true, 仅触发了1次), 此时popover处于显示状态;
                                  当popover显示的时候,会触发update:visible事件(携带的参数是false, 并且触发了2次), 此时popover处于隐藏状态

                           点击下面的触发按钮,
                           		  当popover未显示的时候,未触发update:visible事件,此时popover会处于显示状态, 此时popover处于显示状态;
                           		  当popover显示的时候,会触发update:visible事件(携带的参数是false) ,并且触发了2次, 此时popover处于显示状态;
        -->
        <!-- 使用v-model:visible的目的就是为了能够手动控制弹框的显示与隐藏, 并且能够在点击其它空白区域的时候, 能够隐藏弹框 -->
        <el-popover :visible="popoverShow" @update:visible="updateVisible" placement="bottom"  trigger="click">
            <template #reference>
                <el-button>触发</el-button>
            </template>
            <template #default>
                halo~
            </template>
        </el-popover>

        <el-button @click="popoverShow = true">触发</el-button>
    </div>
</template>

<script setup>

    import { ref,reactive, nextTick, inject } from 'vue'
    
    const popoverShow = ref(false)

    function updateVisible(val) {
        console.log('updateVisible..',val);
        popoverShow.value = val
    }

</script>

<style lang="scss">
    
</style>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值