vue怎么实现element表格里表头信息提示功能?

需求

如图:在element表格操作一栏需要添加提示功能

实现效果

如图:鼠标浮上去弹出tips

解决方案

1、编写组件

promptMessage.vue文件里面实现

<template>

<div class="promt-message-tooltip">
    <el-tooltip effect="light" placement="left">
        <div slot="content">
            <p v-for="item in messages" :key="item">
                {{item}}
            p>
        div>
        <i class="el-icon-question" class="tips-icon">i>
    el-tooltip>
div>
template>

<script>
export default {
  props: ['messages']
}
script>
<style lang="scss">
.promt-message-tooltip {
  .tips-icon {
    color:#409eff;
    margin-left:5px;
    font-size:14px;
  }
}
style>

2、开发插件

index.js文件里面实现

import promptMessage from './promptMessage.vue'

export default {
  install: (Vue) => {
    Vue.component('promptMessage', promptMessage)
  }
}

3、使用插件

main.js文件里面实现

import promptMessage from '@/components/promptMessage/index.js'

Vue.use(promptMessage)

4、业务代码实现

<template>
<el-table tooltip-effect="light" :data="dataList" border >
  <el-table-column label="操作" :render-header="renderHeader">
    <template slot-scope="scope">删除template>
  el-table-column>
el-table>
template>

<script>
export default {
  methods: {
    // render 事件
    renderHeader (h, { column }) {
      return h(
        'div', {
          style: 'display:flex;margin:auto;'
        },
        [
          h('span', column.label),
          // 直接用组件就完事了
          h('prompt-message', {
            props: { messages: ['kaimo需要的tips!'] }
          })
        ]
      )
    }
  }
}
script>

你可能感兴趣的:(07-Vue,08-UI,库)