elementui远程搜索
时间: 2023-10-05 21:06:16 浏览: 88
【JavaScript源代码】Element-ui 自带的两种远程搜索(模糊查询)用法讲解.docx
Element UI提供了一个远程搜索组件,可以用于通过AJAX请求从服务器获取数据。具体的实现步骤如下:
1. 安装 Element UI 组件库和 axios 库
```bash
npm install element-ui axios --save
```
2. 在需要使用远程搜索的组件中引入 Element UI 的 Select 组件,并注册一个远程搜索方法:
```vue
<template>
<el-select v-model="selectedOption" filterable remote reserve-keyword empty-text="暂无数据"
:remote-method="remoteSearch" :loading="loading">
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"></el-option>
</el-select>
</template>
<script>
import axios from 'axios';
export default {
data() {
return {
options: [],
selectedOption: '',
loading: false
}
},
methods: {
remoteSearch(query) {
if (!query) {
this.options = [];
return;
}
this.loading = true;
axios.get('/api/search', { params: { q: query } })
.then(res => {
this.options = res.data;
})
.finally(() => {
this.loading = false;
});
}
}
}
</script>
```
3. 在远程搜索方法中,通过 axios 发送请求到服务器获取数据,并将结果赋值给 options 数组。
4. 在 Select 组件中,绑定远程搜索方法到 remote-method 属性,当用户输入关键字时,会自动调用该方法进行远程搜索。同时,设置 loading 属性来显示加载状态。
阅读全文