vue报错Uncaught runtime errors: × ERROR ResizeObserver loop limit exceeded at handleError (webpack
Uncaught runtime errors: × ERROR ResizeObserver loop limit exceeded at handleError (webpack-internal:///./node_modules/webpack-dev-server/client/overlay.js:252:58) at eval (webpack-internal:///./node_modules/webpack-dev-serve
问题原因:
使用了el-table组件+弹性布局
<el-table
:data="tableData"
border
stripe
>
<el-table-column
prop="id"
label="课程号"
sortable=""
width="150"
>
</el-table-column>
<el-table-column
prop="name"
label="课程名称"
width="130">
</el-table-column>
<el-table-column
prop="type"
label="课程类型"
width="130">
</el-table-column>
<el-table-column
prop="credit"
label="学分"
width="90">
</el-table-column>
<el-table-column
prop="teacher_name"
label="授课教师"
width="140">
</el-table-column>
<el-table-column
prop="capacity"
label="课程容量"
width="120">
</el-table-column>
<el-table-column
prop="num"
label="选课人数"
width="100">
</el-table-column>
<el-table-column
prop="op"
label="操作"
width="100">
<template #default="scope">
<el-popconfirm title="确认选课吗?"
@confirm="selectCourse(scope.row)">
<template #reference>
<el-button size="small" type="primary" >选课</el-button>
</template>
</el-popconfirm>
</template>
</el-table-column>
</el-table>
弹性布局
.centered-container {
display: flex;
justify-content: center;
align-items: center;
height: 100%;
}
单独使用都不会报错,但是两个结合在一起就产生了奇妙的化学反应
解决:修改弹性盒子布局
问chatgpt
为什么最好不要在el-table外面套弹性布局盒子?
在使用 Element UI 的 el-table 元素时,最好不要在其外部套入弹性布局盒子,原因是这样可能会影响 el-table 元素的布局和渲染,并且会对应用程序的性能产生负面影响。下面是一些可能会出现的问题:
超出宽度:如果将一个弹性布局盒子直接包裹在 el-table 外部,且该盒子的大小大于 el-table 元素的最大宽度,则会出现横向滚动条或者表格内容超出边界的情况。
滚动不流畅:如果给包含 el-table 的弹性布局盒子设置 overflow: auto 或 overflow-y: auto 属性来创建垂直滚动,那么将会导致滚动不流畅或滚动条渲染错误等问题。
渲染性能下降:el-table 元素非常复杂,由多个高度自适应的子组件组成,在有大量数据或者多个表格时,外部使用弹性布局容器可能会导致性能下降,因为每个列的宽度和高度将会重新计算以适应包含容器。而且,弹性布局容器通常会调用重复的计算和渲染操作。
为了避免这些问题,建议将 el-table 元素放置在一个固定的容器中(例如固定宽度的 div 元素),这样可以保证表格的大小和渲染效率,同时也减少性能问题。