elementui的table实现滚动加载
时间: 2023-08-29 22:08:16 浏览: 95
ElementUI 的 table 组件也可以实现滚动加载,以下是使用 table 组件实现滚动加载的基本步骤:
1. 将 table 组件的 height 属性设置为固定高度,例如:
```
<el-table :data="tableData" :height="400" v-infinite-scroll="loadMore" infinite-scroll-disabled="loading" infinite-scroll-distance="10">
```
在这个例子中,我们将 table 组件的 height 属性设置为 400,表示表格的高度为 400 像素。同时,我们还将 v-infinite-scroll 指令绑定到 loadMore 方法,这个方法会在滚动到底部时被触发。
2. 实现 loadMore 方法,这个方法会在滚动到底部时被触发,例如:
```
loadMore() {
this.loading = true; // 开始加载
// 发送请求获取新数据
fetchData().then((data) => {
this.tableData = this.tableData.concat(data); // 追加新数据
this.loading = false; // 加载完成
});
}
```
在这个例子中,我们通过 fetchData 方法获取新数据,并将新数据追加到原有数据中。注意在加载数据时要将 loading 状态设置为 true,在加载完成后要将 loading 状态设置为 false。
3. 最后,为 el-table__body-wrapper 元素添加样式,例如:
```
.el-table__body-wrapper {
overflow-y: auto;
}
```
在这个例子中,我们为 el-table__body-wrapper 元素添加了纵向滚动条,这样当数据量很大时,el-table__body-wrapper 就会出现滚动条,从而实现滚动加载。
阅读全文