el-autocomplete 下拉展示为el-table展示
时间: 2023-08-05 14:06:29 浏览: 128
您可以使用 `el-table` 组件来展示 `el-autocomplete` 的下拉选项。具体做法如下:
1. 在 `el-autocomplete` 的 `popper-class` 属性中指定一个自定义的类名,例如 `autocomplete-table`:
```html
<el-autocomplete popper-class="autocomplete-table"></el-autocomplete>
```
2. 在 `autocomplete-table` 类名下定义一个 `el-table` 组件,并将 `el-autocomplete` 的下拉选项作为 `el-table` 的数据源:
```html
<style>
.autocomplete-table {
width: 300px;
}
</style>
<template>
<el-autocomplete popper-class="autocomplete-table" :fetch-suggestions="querySearch">
<template slot-scope="{ item }">
<el-table :data="item.options">
<el-table-column prop="value" label="选项"></el-table-column>
</el-table>
</template>
</el-autocomplete>
</template>
<script>
export default {
data() {
return {
options: [
{ value: 'Option 1', options: [{ value: 'Option 1-1' }, { value: 'Option 1-2' }] },
{ value: 'Option 2', options: [{ value: 'Option 2-1' }, { value: 'Option 2-2' }] },
{ value: 'Option 3', options: [{ value: 'Option 3-1' }, { value: 'Option 3-2' }] }
]
}
},
methods: {
querySearch(queryString, cb) {
const results = this.options.filter(option => {
return option.value.toLowerCase().indexOf(queryString.toLowerCase()) !== -1
})
cb(results)
}
}
}
</script>
```
在上面的例子中,我们定义了一个 `options` 数组,数组中的每一个元素都是一个选项对象,包含一个 `value` 属性和一个 `options` 属性,`value` 属性表示选项的名称,`options` 属性是一个数组,表示该选项的下拉选项。在 `querySearch` 方法中,我们根据用户输入的 `queryString` 筛选出符合条件的选项,并将其作为 `el-autocomplete` 的下拉选项。在 `el-autocomplete` 中,我们使用 `slot-scope` 来获取每个选项的数据对象,然后使用 `el-table` 将该选项的下拉选项渲染为表格。
阅读全文
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)