实现效果:
输入内容(重量),列表会显示接近的重量列表
<el-autocomplete
v-model="form.cargoWeight2"
class="input-with-search"
:fetch-suggestions="querySearch"
placeholder="(KG)"
popper-class="my-autocomplete"
@select="handleSelect"
>
<template #append>
<el-tooltip
class="box-item"
content="点击刷新称重数据"
effect="dark"
placement="bottom"
>
<el-button class="query-search-btn" @click="handleRefresh">
<vab-icon icon="refresh-line" />
</el-button>
</el-tooltip>
</template>
<template #default="{ item }">
<div
class="value"
style="
display: flex;
justify-content: space-between;
align-items: center;
"
>
<span>{{ item.title }}</span>
<el-tag type="primary">点击选择</el-tag>
</div>
<span class="link">{{ item.subtitle }}</span>
</template>
</el-autocomplete>
搜索
const querySearch = (queryString, cb) => {
queryString = queryString === 'null' ? '' : queryString
const results = queryString
? state.weightList.filter(createFilter(queryString))
: state.weightList
cb(results)
}
const createFilter = (queryString) => {
return (item) => {
console.log('item', item)
return ('' + item.value).includes(queryString || '')
}
}