搜索输入框建议提示(自动完成)功能实现

一、示例需求

在这里插入图片描述

二、后端接口

1、ListController

@ApiOperation("根据左关键字查询讲师名列表")
@GetMapping("/list/name/{key}")
public R selectNameListByKey(
        @ApiParam(value = "查询关键字", required = true)
        @PathVariable String key){
    List<Map<String, Object>> nameList = teacherService.selectNameListByKey(key);
    return R.ok().data("nameList", nameList);
}

2、ListrService

List<Map<String, Object>> selectNameListByKey(String key);
@Override
public List<Map<String, Object>> selectNameListByKey(String key) {
    QueryWrapper<List> queryWrapper = new QueryWrapper<>();
    queryWrapper.select("name");
    queryWrapper.likeRight("name",key);
    List<Map<String, Object>> list = baseMapper.selectMaps(queryWrapper);//返回值是Map列表
    return list;
}

三、前端整合

在这里插入图片描述

1、api

selectNameListByKey(key) {
  return request({
    url: `/list/name/${key}`,
    method: 'get'
  })
}

2、Element输入框组件

<el-form-item>
  <el-autocomplete
    v-model="searchObj.name"
    :fetch-suggestions="querySearch"
    :trigger-on-focus="false"
    class="inline-input"
    placeholder="列表"
    value-key="name" />
</el-form-item>
querySearch(queryString, callback) {
  listApi.selectNameListByKey(queryString).then(response => {
    callback(response.data.nameList)
  })
}

3、注意value-key默认值的修改
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值