当前位置: 首页 > news >正文

vue3使用el-autocomplete请求远程数据

服务器端

@RestController
@RequestMapping("/teacher")
public class TeacherController {@Resourceprivate TeacherService teacherService;@GetMapping({"/v1/getTop10TeacherByName/","/v1/getTop10TeacherByName/{name}"})public ResultBean<List<EntryBean>> getTop10TeacherByName(@PathVariable(value = "name",required = false) String name) {List<EntryBean> list = teacherService.getTop10TeacherByName(name);return ResultBeanUtil.success(list);}}

返回数据示例,比如请求:/teacher/v1/getgetTop10TeacherByName/大,返回数据:

[{"code": 200,"msg": "成功","data": [{"id": 2,"name": "史宇大"},{"id": 1,"name": "蔡大伟"},{"id": 3,"name": "秦大"}]}
]

vue页面

<template><div style="padding: 100px"><el-autocompletev-model="selectedName"value-key="name":fetch-suggestions="handleSearch"clearableplaceholder="请输入关键字"@select="handleSelect"/></div>
</template><script setup lang="ts">
import { getTop10TeacherByName } from "@/views/data/teacher/api/teacher";
import { onMounted, ref } from "vue";// 游戏
const selectedName = ref("");// 查询
const handleSearch = (queryString: string, callback: (args: EntryBean[]) => void) => {if (queryString) {getTop10TeacherByName({ name: queryString }).then(res => {console.log("从后台查询数据", res);if (res && res.code === 200 && res.data) {const results = queryString? res.data.filter(tmp => {return tmp.name.toLowerCase().indexOf(queryString.toLowerCase()) != -1;}): res.data;callback(results);}});}
};// 选择
const handleSelect = (item: EntryBean) => {console.log("用户选择的:", item.id, item.name);
};onMounted(() => {});
</script>

效果

请添加图片描述

http://www.lryc.cn/news/343496.html

相关文章:

  • 【学习笔记】HarmonyOS 4.0 鸿蒙Next 应用开发--安装开发环境
  • 【PHP】计算两个时间戳之间相差的时间
  • Out-of-Distribution Detection with Semantic Mismatch under Masking
  • 嫦娥六号近月制动成功,建立月球基地又迈进一步!
  • 上位机图像处理和嵌入式模块部署(树莓派4b使用lua)
  • 分布式与一致性协议之ZAB协议(五)
  • 计算机毕业设计 | springboot+vue凌云在线阅读平台 线上读书系统(附源码)
  • ICode国际青少年编程竞赛- Python-1级训练场-综合训练1
  • 提示词工程入门-使用文心一言4.0-通义千问-GPT4-Claude3通用提示技巧测试
  • 损失函数详解
  • 算法提高之树的中心
  • 【Java基础】面向对象是什么
  • 家用洗地机应该怎么选?哪个牌子好?市场上主流洗地机品牌推荐
  • python Django REST framework允许你根据API的版本提供不同的行为或数据
  • unity给物体添加可以包裹所有子物体的BoxCollider
  • 2024五一数学建模A题思路代码与论文分析
  • ICode国际青少年编程竞赛- Python-1级训练场-基础训练2
  • 科技控必看!让你轻松成为机器人领域达人
  • Linux进程——Linux下常见的进程状态
  • TCP长连接短链接
  • 代码随想录35期Day33-Java
  • PMP考试没过怎么办?如何补考?(附复核流程)
  • 自主实现Telnet流量抓取
  • 以瓦片地图为底图添加图表,保留拖拽功能
  • Windows cmd bat之特殊符号及变量
  • 用python写个控制MicroSIP自动拨号和定时呼叫功能(可用在小型酒店叫醒服务)
  • axios 取消token 模糊搜索
  • 【OTS4WORD】“精简并行过程”——容易剪裁的“软件过程改进方法和规范”模板
  • 22 | MySQL有哪些“饮鸩止渴”提高性能的方法?
  • 【AIGC调研系列】VILA-1.5版本的视频理解功能如何