<el-form-item label="单位" :label-width="formLabelWidth" prop="workunitid" 我需要实现滚动触底加载更多数据 > <el-select v-model="form.workunitid" placeholder="请选择单位"> <el-option v-for="item in unitOptions" :label="item.name" :value="item.id" :key="item.id" ></el-option> </el-select> </el-form-item>
时间: 2023-12-19 14:05:04 浏览: 181
vue实现表单数据验证的实例代码
你可以在`el-select`标签外层嵌套一个`el-scrollbar`组件,然后监听`scroll`事件,当滚动到底部时触发加载更多数据的函数。具体实现方式如下:
```html
<el-form-item label="单位" :label-width="formLabelWidth" prop="workunitid">
<el-scrollbar style="max-height: 200px; overflow: auto" @scroll.native="loadMore">
<el-select v-model="form.workunitid" placeholder="请选择单位">
<el-option
v-for="item in unitOptions"
:label="item.name"
:value="item.id"
:key="item.id"
></el-option>
</el-select>
</el-scrollbar>
</el-form-item>
```
其中,`loadMore`方法是用来加载更多数据的函数,你可以根据实际情况进行实现。在该方法中,你可以判断滚动条是否已经滚动到底部,如果滚动到底部则触发加载更多数据的逻辑。具体实现方式如下:
```js
methods: {
loadMore() {
const el = this.$el.querySelector('.el-scrollbar__wrap');
const isBottom = el.scrollHeight - el.scrollTop === el.clientHeight;
if (isBottom) {
// 触发加载更多数据的逻辑
// ...
}
},
},
```
阅读全文