前言
当我们使用 element 的 el-select 组件时,有时候会遇到选项被遮挡的问题,这不仅影响了用户的操作体验,也会降低页面的美观度。针对这种情况,我们需要寻找一种解决方案,来解决 el-select 选项被遮挡的问题。在本文中,我将为大家介绍一种可行的解决方案,帮助大家们更好地使用 el-select 组件。
先看问题所在:
可以看到我一直在点击下拉框,但是却只有图标有变化,选项框并没有显示出来。
解决方法:
在
el-select
组件中加上transfer="true" :popper-append-to-body="false"
即可。
el-select
的 transfer
属性是用于控制下拉菜单是否在 body
内进行渲染的一个属性。当 transfer
属性设置为 true
时,下拉菜单将被渲染到 body
内,而不是在 el-select
组件的父元素内。这样可以解决因为父元素的样式或者层级问题导致下拉菜单被遮挡的情况。默认情况下,transfer
属性的值为 false
,即下拉菜单会在 el-select
组件的父元素内进行渲染。
el-select
的 popper-append-to-body
属性是用于是否将弹出框插入至 body
元素。在弹出框的定位出现问题时,可将该属性设置为 false
。
<el-select v-model="leftData.select" transfer="true" :popper-append-to-body="false" clearable>
<el-option
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>