<el-select
v-model="formLabelAlign.handlerPeopleList"
multiple
filterable
remote
:remote-method="remoteMethod"
placeholder="请选择"
:disabled="isDisabled"
style="width: 455px"
ref="selectRef"
>
<el-option
v-for="item in options"
:key="item.value"
:label="item.lable"
:value="item.value"
>
</el-option>
<div>
<el-pagination
layout="prev, pager, next"
:total="total"
@current-change="handleCurrentChange"
>
</el-pagination>
</div>
</el-select>
return:{
currentPage: 1,
total: '',
loading:false,
pageSize: 10, // 每页数据条数
isLoading: false, // 是否正在加载数据的标志
dialogVisible: false,
options: [],
formLabelAlign: {
handlerPeopleList: [],
'
},
}
methods:{
remoteMethod(query) {
// console.log('query', query)
this.loading = true
setTimeout(() => {
this.options = this.getUserList(10, 1, query)
this.loading = false
}, 1000)
},
handleCurrentChange(val) {
// console.log('val', val)
this.getUserList(10,val,'')
},
async getUserList(pageSize = 10, currentPage = 1, name) {
// console.log('name', name)
try {
const result = await this.$options.$http({
url: 'alarmSelectNew',
method: 'post',
data: { pages: { current: currentPage, size: pageSize }, name: name }
})
this.options = result.data.data
this.total = result.data.total
} catch (error) {
console.error('Error fetching data:', error)
return []
}
},
}