element-plus自动补全输入框 远程搜索返回的数组怎么回调到自动补全输入框选择项中
时间: 2024-05-14 12:17:38 浏览: 295
element-plus-1.0.2-beta.53.zip
要将远程搜索返回的数组回调到自动补全输入框选择项中,你需要使用`<el-autocomplete>`组件提供的`value-key`和`fetch-suggestions`属性。
首先,你需要在`<el-autocomplete>`中设置`value-key`属性,指定要在远程搜索返回的每个对象中作为值的属性名。
```html
<el-autocomplete
v-model="inputValue"
:value-key="'value'" // 设置要作为值的属性名
:fetch-suggestions="querySearchAsync"
@select="handleSelect"
></el-autocomplete>
```
然后,你需要实现`fetch-suggestions`方法,该方法会在用户输入时自动调用,你可以在该方法中发送异步请求,获取远程搜索的结果并将其返回。
```js
async querySearchAsync(queryString, cb) {
const response = await fetch(`/api/search?q=${queryString}`);
const data = await response.json();
cb(data); // 将远程搜索返回的结果传递给回调函数
}
```
最后,你需要在`<el-autocomplete>`中监听`select`事件,在选择一个选项时触发回调函数并将选中的值传递给它。
```js
methods: {
handleSelect(item) {
console.log(item); // 输出选中的值
}
}
```
这样,当用户在自动补全输入框中输入字符时,它会调用`fetch-suggestions`方法并将远程搜索返回的结果显示在下拉列表中。当用户选择一个选项时,它会触发`select`事件并将选中的值传递给回调函数。
阅读全文