代码如下


    <div v-for="(item,index) in list"
         :key="index"
    >
      <el-tooltip class="item"
                  ref="key"
                  effect="dark"
                  :content="iconDict[item]"
                  placement="left"
      >
        <div>
          <span>{{ item }}</span>
        </div>
      </el-tooltip>
    </div>

在网页的查看这些tooltip组件看到他们是绝对定位,相对于body,但是vue的现实都是在 id为app的div中,所以他和这个<div id='app'>一起超过了100vh页面出现了滚动条,所以我把这些虚拟的popper,加到一个页面中的div里即可

// 加一个dom
<div ref="here"></div>

在js中
  mounted() {
    this.$nextTick(() => {
      this.$refs.key.map(item => { // 循环refs
        this.$refs.here.appendChild( // 将这些tooltip的dom加到这个div中
          item.popperVM.$el
        )
      })
    })
  }

上面的方法如果不生效,也可设置body属性

boduy{
   overflow: hidden;
}

GitHub 加速计划 / eleme / element
10
1
下载
A Vue.js 2.0 UI Toolkit for Web
最近提交(Master分支:4 个月前 )
c345bb45 8 个月前
a07f3a59 * Update transition.md * Update table.md * Update transition.md * Update table.md * Update transition.md * Update table.md * Update table.md * Update transition.md * Update popover.md 8 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐