element-ui中的el-popover结合vue中的v-for的使用方法

一个使用v-for循环渲染的列表,要求鼠标hover的时候显示其详细的介绍,我将需求简化,看下面代码效果图:鼠标hover到哪一个色块的时候,tips显示其具体的色块代码,给el-popover绑定ref属性,必须是唯一的,通过element-ui组件自带的showPopper属性来控制tips的显隐

    <template v-for="(item, index) in datacolor">
      <el-popover
      placement="top"
      width="160"
      :content="item.color"
      :ref="'elpopoverRef'+index">
        <div
          slot="reference"
          :key="index"
          class="item"
          :style="{ background: `${item.color}` }"
          @mouseover="changeHoverEle(item, index)"
          @mouseleave="changeHoverLeave(item,index)"
        ></div>
      </el-popover>
    </template>

js部分代码

mounted(){
  for (let i = 0; i < 100; i++) {
    this.datacolor.push({
      id:i,
      color:`#${Math.floor(Math.random()*0xffffff).toString(16).padEnd(6,"0")}`
    })
  }
}
methods(){
  changeHoverEle(item, index){
    //showPopper是element-ui组件内部自带的属性
    this.$refs[`elpopoverRef${index}`][0].showPopper = true
  },
  changeHoverLeave(item, index){
    this.$refs[`elpopoverRef${index}`][0].showPopper = false
  },
}
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值