Elemenu中el-table中使用el-popover选中关闭无效解决办法(最新推荐)

 更新时间:2024年03月11日 10:34:39   作者:满上  
这篇文章主要介绍了Elemenu中el-table中使用el-popover选中关闭无效解决办法(最新推荐),因为在el-table-column里,因为是多行,使用trigger="manual" 时,用v-model="visible"来控制时,控件找不到这个值,才换成trigger="click",需要的朋友可以参考下

Elemenu中el-table中使用el-popover选中关闭无效解决办法

主要是技术太菜,没找到原因,一点点才找到这个办法解决

因为在el-table-column里,因为是多行,使用trigger="manual" 时,用v-model="visible"来控制时,控件找不到这个值,才换成trigger="click"

先找到弹出关闭事件,再找元素的属性

右键>审核元素,找到他的单击事件,里面就有关闭的属性

使用ref定位,js中根据ref修改是否显示showPopper = false;

页面大概代码

<el-table-column>
    <template slot-scope="scope">
        <el-popover :ref="col.prop+'_'+scope.$index" trigger="click" >
            <span slot="reference" @click="ev_gytj_clk(scope.row,scope.$index)">{{ scope.row[col.prop] }}</span>
		</el-popover>
    </template>
</el-table-column>

js代码

ev_gytj_clkitem(row,index,item){			
			row.gytj=item
			//Popper选中关闭		
			this.$refs['gytj_' + index][0].showPopper = false
		},

补充:

解决 el-table使用 el-popover 点击没反应 bug

项目场景:

原因分析:

 在el-table使用el-popover时不能简单的按照官网给的实例操作 实例只针对单个的按钮管用在表格里每一列都有el-popover相当于是v-for遍历了 所以我们在触发按钮的时候并不是单个的触发某一个 

解决方案:

方法一:

<template slot-scope="scope">
   <el-popover
         placement="top"
        :ref="`popover-${scope.$index}`">
        <p>确定删除?</p>
        <div style="text-align: right; margin: 0">
                <el-button style="padding: 2px;" size="mini" type="text"                                 ​​​​​​​                                    @click="scope._self.$refs[`popover-${scope.$index}`].doClose()">取消
                </el-button>
                <el-button style="padding: 2px;" type="primary" size="mini"                                           @click="deltaskList(scope)">确定
                </el-button>
          </div>
          <el-button slot="reference" type="text" size="small">删除</el-button>
   </el-popover>
</template>
//方法
deltaskList(e){
        e._self.$refs[`popover-${e.$index}`].doClose();
},

方法二:

<template slot-scope="scope">
   <el-popover
         placement="top"
        :ref="`popover-${scope.$index}`">
        <p>确定删除?</p>
        <div style="text-align: right; margin: 0">
                <el-button style="padding: 2px;" size="mini" type="text"                 ​​​​​​​        ​​​​​​​        ​​​​​​​                                    @click="deltaskList(scope.$index)">取消
                </el-button>
                <el-button style="padding: 2px;" type="primary" size="mini">确定
                </el-button>
          </div>
          <el-button slot="reference" type="text" size="small">删除</el-button>
   </el-popover>
</template>
//方法
deltaskList(index){
       this.$refs[`popover-${index}`].doClose()
},

方法三:

<template slot-scope="scope">
   <el-popover
         placement="top"
         v-model="item.row.visible">
        <p>确定删除?</p>
        <div style="text-align: right; margin: 0">
                <el-button style="padding: 2px;" size="mini" type="text"                 ​​​​​​​        ​​​​​​​        ​​​​​​​                                    @click="deltaskList()">取消
                </el-button>
                <el-button style="padding: 2px;" type="primary" size="mini"         ​​​​​​​                                                      @click="deltaskList()">确定
                </el-button>
          </div>
          <el-button slot="reference" type="text" size="small">删除</el-button>
   </el-popover>
</template>
//方法
deltaskList(){
      this.$refs.closepopover.click();
},

到此这篇关于Elemenu中el-table中使用el-popover选中关闭无效解决办法的文章就介绍到这了,更多相关el-table使用el-popover选中关闭无效内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • vue3中调用api接口实现数据的渲染以及详情方式

    vue3中调用api接口实现数据的渲染以及详情方式

    这篇文章主要介绍了vue3中调用api接口实现数据的渲染以及详情方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-08-08
  • 解决Vue项目中Emitted value instead of an instance of Error问题

    解决Vue项目中Emitted value instead of an 

    这篇文章主要介绍了解决Vue项目中Emitted value instead of an instance of Error问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-11-11
  • ant design pro中可控的筛选和排序实例

    ant design pro中可控的筛选和排序实例

    这篇文章主要介绍了ant design pro中可控的筛选和排序实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • Vue3.0监听器watch与watchEffect详解

    Vue3.0监听器watch与watchEffect详解

    在 Vue 3 中,watch 仍然是一种用于监听数据变化并执行相应操作的方式,不过在组合式 API 中,watch 的使用方式与选项式 API 略有不同,这篇文章主要介绍了Vue3.0监听器watch与watchEffect,需要的朋友可以参考下
    2023-12-12
  • vue里input根据value改变背景色的实例

    vue里input根据value改变背景色的实例

    今天小编就为大家分享一篇vue里input根据value改变背景色的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-09-09
  • Nuxt封装@nuxtjs/axios请求后端数据方式

    Nuxt封装@nuxtjs/axios请求后端数据方式

    这篇文章主要介绍了Nuxt封装@nuxtjs/axios请求后端数据方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-10-10
  • 详解Vue微信公众号开发踩坑全记录

    详解Vue微信公众号开发踩坑全记录

    本篇文章主要介绍了详解Vue微信公众号开发踩坑全记录,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08
  • Vue3 实现一个自定义toast 小弹窗功能

    Vue3 实现一个自定义toast 小弹窗功能

    这篇文章主要介绍了Vue3 实现一个自定义toast 小弹窗,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-09-09
  • vue配置生产环境.env.production与测试环境.env.development

    vue配置生产环境.env.production与测试环境.env.development

    这篇文章主要介绍了vue配置生产环境.env.production与测试环境.env.development方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-10-10
  • Vue 插件及浏览器本地存储

    Vue 插件及浏览器本地存储

    这篇文章主要介绍了Vue 插件及浏览器本地存储,插件通常用来为Vue添加全局功能,包含install方法的一个对象。更多相关介绍,需要的小伙伴可以参考下面文章内容
    2022-05-05

最新评论