el-image-viewer预览大图
问题描述
- 在使用
Elememt UI
组件库时,通过el-image-viewer
组件实现大图预览,会导致预览的大图重叠显示
原因
Elememt UI
组件库中的el-table
组件和el-image-viewer
组件冲突- 把
el-image-viewer
组件包含在了el-table
组件内,导致el-table
组件将其作为el-table-column
进行渲染
<el-table :data="simulationResult" stripe style="width: 100%">
<el-table-column prop="jobname" label="项目名称" width="220">
</el-table-column>
<el-image-viewer
v-if="showViewer"
:on-close="
() => {
showViewer = false;
}
"
:url-list="selectSimulationResult"
/>
</el-table>
解决方法
- 将
el-image-viewer
组件提取到el-table
组件外,避免发生错误的渲染
<el-table :data="simulationResult" stripe style="width: 100%">
<el-table-column prop="jobname" label="项目名称" width="220">
</el-table-column>
</el-table>
<el-image-viewer
v-if="showViewer"
:on-close="
() => {
showViewer = false;
}
"
:url-list="selectSimulationResult"
/>
- 此时在存在
el-table
组件的页面中预览大图时就不会重叠了…