前端Vue自定义顶部搜索框:实现热门搜索与历史搜索功能

前端Vue自定义顶部搜索框:实现热门搜索与历史搜索功能

摘要:
随着前端开发复杂性的增加,组件化开发成为了提高效率和降低维护成本的有效手段。本文介绍了一个基于Vue的前端自定义顶部搜索框组件,该组件不仅具备基本的搜索功能,还集成了热门搜索和历史搜索特性,为开发者提供了一个高效、可复用的解决方案。

一、背景与意义

在前端开发中,搜索框是许多应用中不可或缺的一部分。传统上,搜索框的实现往往与整个应用紧密耦合,导致开发和维护的复杂性较高。通过组件化的方式,我们可以将搜索框作为一个独立的组件进行开发,使其更加灵活、可复用。此外,集成热门搜索和历史搜索功能可以为用户提供更加便捷、个性化的搜索体验。

二、Vue组件化开发的优势

Vue作为一款流行的前端框架,其组件化开发的特点使得开发者能够更加高效地进行前端开发。通过Vue的组件化开发,我们可以将搜索框拆分为一个独立的组件,实现单独开发、单独维护,并且可以与其他组件进行灵活的组合,从而提高开发效率和降低维护成本。

三、自定义顶部搜索框的设计与实现

1. 组件结构

自定义顶部搜索框组件主要包括搜索框、热门搜索列表和历史搜索列表三部分。搜索框用于用户输入搜索关键词,热门搜索列表显示用户搜索频率较高的关键词,历史搜索列表则记录用户的搜索历史。

2. 数据处理

组件通过props接收一个名为skipUrl的属性,该属性指定了搜索跳转的目标URL。当用户在搜索框中输入关键词并点击搜索按钮时,组件会构造一个带有搜索关键词的URL,并通过router.push方法跳转到目标页面。同时,组件还会将用户输入的关键词保存到本地存储中,以便实现热门搜索和历史搜索功能。

3. 热门搜索与历史搜索的实现

热门搜索功能通过统计用户搜索关键词的频率来实现。每当用户进行一次搜索时,组件都会更新热门搜索列表。历史搜索功能则通过记录用户搜索历史来实现。用户可以通过点击历史搜索列表中的关键词快速进行搜索。

效果图如下:

图片

图片

四、组件代码实现

组件使用方法
<!-- 自定义顶部搜索框 用于搜索跳转 skipUrl:跳转url为绝对路径 /pages开头 --><cc-headSearch skipUrl="/pages/index/search"></cc-headSearch>
HTML代码实现部分
<template><view class="content"><!-- 自定义顶部搜索框 用于搜索跳转 skipUrl:跳转url为绝对路径 /pages开头 --><cc-headSearch skipUrl="/pages/index/search"></cc-headSearch><!-- 1.推荐流贷产品”“推荐固贷产品”“推荐供应链产品”“推荐综合服务” --><div class="mui-content-padded"><!-- 列表组件 --><CCBProjectList :productList="projectList" @click="goProDetail"></CCBProjectList></div></view>
</template><script>import CCBProjectList from '../../components/CCProjectList.vue';export default {components: {CCBProjectList},data() {return {skipUrl: '',// 列表数组projectList: []}},mounted() {this.requestData();},methods: {requestData() {// 模拟请求参数设置let reqData = {'area': '',"pageSize": 10,"pageNo": this.curPageNum}// 模拟请求接口this.totalNum = 39;this.projectList = [];for (let i = 0; i < 10; i++) {this.projectList.push({'proName': '商品名称' + i,'proUnit': '商品详情' + i,'area': '商品介绍','proType': '优质','stage': '七天无理由退货','id': i + ''});}}}}
</script><style>page {background-color: #f7f7f7;}.content {display: flex;flex-direction: column;}.mui-content-padded {margin: 0px 14px;/* background-color: #ffffff; */}
</style>

五、总结与展望

本文介绍了一个基于Vue的前端自定义顶部搜索框组件,该组件不仅具备基本的搜索功能,还集成了热门搜索和历史搜索特性。通过组件化的开发方式,我们实现了单独开发、单独维护,并且可以与其他组件进行灵活的组合,大大提高了开发效率和降低了维护成本。未来,我们可以进一步优化该组件的性能和用户体验,例如增加搜索建议、搜索结果高亮等功能。

项目下载地址:

https://ext.dcloud.net.cn/plugin?id=13128

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/16802.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Micro SD封装是什么?

我们了解客户对于Micro SD封装的疑问。在这篇文章中&#xff0c;我们将详细解释Micro SD封装是什么&#xff0c;以及其在存储领域的技术原理和应用情况&#xff0c;帮助客户更好地理解这一技术。 1. Micro SD封装的定义 Micro SD封装是指一种特定尺寸的存储芯片封装方式&#x…

windows 11 23H2更新总是失败解决过程

频繁更新失败的困扰 最近一个月以来 windows 11 系统 23H2 更新总是失败&#xff0c;更新失败会撤销更改: 之后会自动重启系统&#xff0c;但是重启进不去系统&#xff0c;屏幕有背光但是不显示任何内容。 这时候只能长按开机键强制关机。每次出现这种情况我都没办法远程连接到…

大规模团队的数据库开发,如何用OceanBase工具快速建立企业级账号体系

前言 为了让数据库开发的安全性与可靠性得以充分保障&#xff0c;数据库开发工具的管控能力显得尤为关键。构建一个健全的账号体系&#xff0c;能够协助开发团队实现对数据库开发工具的全方位管控&#xff0c;从而有效防范各类数据安全隐患&#xff0c;确保数据库开发的顺利进…

【Python】搭建pypi私仓

1. 下载依赖 pip install pypiserver # 命令安装 pypiserver 库 pip install passlib # passlib 包来读取 Apache htpasswd 文件apt-get install -y apache2-utils2. 生成密码 使用htpasswd库在指定路径/path/to/.pypipasswd生成密码文件 htpasswd -c /path/to/.pypipasswd …

【开源】租房管理系统 JAVA+Vue+SpringBoot+MySQL

目录 一、系统介绍 租客屋主模块 房源信息模块 租客评价模块 房源订单模块 留言板模块 二、系统截图 三、核心代码 一、系统介绍 基于Vue.js和SpringBoot的租房管理系统&#xff0c;分为管理后台和用户网页端&#xff0c;可以给管理员、租客和屋主角色使用&#xff0c…

大模型应用之基于Langchain的测试用例生成

一 用例生成实践效果 在组内的日常工作安排中&#xff0c;持续优化测试技术、提高测试效率始终是重点任务。近期&#xff0c;我们在探索实践使用大模型生成测试用例&#xff0c;期望能够借助其强大的自然语言处理能力&#xff0c;自动化地生成更全面和高质量的测试用例。 当前…

【cocos creator】进度条控制脚本,支持节点进度条,图片进度条,进度条组件,和进度文字展示

进度条控制脚本&#xff0c;支持节点进度条&#xff0c;图片进度条&#xff0c;进度条组件&#xff0c;和进度文字展示 const { ccclass, property, menu } cc._decorator;let text_type cc.Enum({"20%": 0,"1/5": 1,"差值": 2,"自定义…

【计算机毕业设计】基于SSM++jsp的汽车客运站管理系统【源码+lw+部署文档】

目录 第1章 绪论 1.1 课题背景 1.2 课题意义 1.3 研究内容 第2章 开发环境与技术 2.1 MYSQL数据库 2.2 JSP技术 2.3 SSM框架 第3章 系统分析 3.1 可行性分析 3.1.1 技术可行性 3.1.2 经济可行性 3.1.3 操作可行性 3.2 系统流程 3.2.1 操作流程 3.2.2 登录流程 3.2.3 删除信息流…

人大金仓 KingBase查询死锁,释放死锁

人大金仓(kingbase)查询数据库死锁及释放 kingbase锁表排查以及释放锁 总结下 -- 查询&#xff0c;可自己添加where条件 SELECT * FROM sys_stat_activity WHERE state ! idle AND wait_event_typeLock-- 结束进程 SELECT sys_terminate_backend(pid);

PLC集成BL121PO网关优化智能电网的远程管理PLC转OPC UA协议

随着工业自动化技术的不断发展&#xff0c;智能电网等复杂系统对于设备之间高效通信的需求日益增加。PLC转OPC UA协议转换网关BL121PO作为一款领先的协议转换设备&#xff0c;通过其独特的设计和功能&#xff0c;为用户提供了高效、安全的PLC接入OPC UA的解决方案。 设备概述 …

了解Hive 工作原理:Hive 是如何工作的?

一、概念 1、Hive Apache Hive 是一个分布式的容错数据仓库系统&#xff0c;可实现大规模分析和便于使用 SQL 读取、写入和管理驻留在分布式存储中的PB级数据。 Hive是建立在Hadoop之上的数据仓库框架&#xff0c;它提供了一种类SQL的查询语言—HiveQL&#xff0c;使得熟悉S…

【深度学习实战—8】:基于MediaPipe的人脸检测

✨博客主页&#xff1a;王乐予&#x1f388; ✨年轻人要&#xff1a;Living for the moment&#xff08;活在当下&#xff09;&#xff01;&#x1f4aa; &#x1f3c6;推荐专栏&#xff1a;【图像处理】【千锤百炼Python】【深度学习】【排序算法】 目录 &#x1f63a;一、Med…

软件3班20240527

JDK 版本与 Tomcat 的 兼容性

rk3568_spinlock

文章目录 前言1、spinlock是什么?2、自旋锁实验2.1源码2.2 结果图总结前言 本文记录在rk3568开发板做的自旋锁实验。通过自旋锁控制state变量来限制只有一个应用程序来打开驱动设备。 1、spinlock是什么? spinlock称为自旋锁,如果获取不到资源,就只能一直傻傻地等待资源被…

实现销售与客流双增长!看看社区零售“排队王”如何成为顶流?

5月18日至5月26日&#xff0c;北京华联BHGMall燃情推出了一年一度的2024 Need&#xff08;你的&#xff09;BHGDay&#xff0c;接棒“五一”热潮&#xff0c;献礼“520”&#xff0c;通过韩式俯拍机、人生四宫格拍摄大赛、真合拍星派对、超级品牌日等丰富多彩的线上线下活动&am…

迷你手持小风扇哪个牌子质量好又实惠?这五款不踩雷推荐!

每年夏天&#xff0c;迷你手持小风扇作为消暑神器都会成为市场上的热销产品。然而&#xff0c;由于选购经验有限&#xff0c;许多消费者在面对众多品牌和型号时&#xff0c;往往难以判断哪个牌子的迷你小风扇既质量好又价格实惠。在追求性价比的同时&#xff0c;我们也不应忽视…

【设计模式】JAVA Design Patterns——Data Access Object(数据访问对象模式)

&#x1f50d;目的 对象为某种类型的数据库或其他持久性机制提供了抽象接口。 &#x1f50d;解释 真实世界例子 有一组客户数据需要持久化到数据库中。 我们需要整个额外的增删改查操作以便操作客户数据。 通俗描述 DAO是我们通过基本持久性机制提供的接口。 维基百科 在计算机…

【云原生】kubernetes中的认证、权限设置---RBAC授权原理分析与应用实战

✨✨ 欢迎大家来到景天科技苑✨✨ &#x1f388;&#x1f388; 养成好习惯&#xff0c;先赞后看哦~&#x1f388;&#x1f388; &#x1f3c6; 作者简介&#xff1a;景天科技苑 &#x1f3c6;《头衔》&#xff1a;大厂架构师&#xff0c;华为云开发者社区专家博主&#xff0c;…

基于UDP的TFTP文件传输-实现网盘上传下载功能

数据传输模式&#xff1a;octet(二进制模式) #include<head.h> char* down_up_request(char* buf,char* filename,int rw,int sockfd,struct sockaddr_in in); int download(struct sockaddr_in in,char* filename,char* buf,int sockfd); int upload(struct sockaddr_in…

百川大模型拿下国产第一,AI助手「百小应」上线,比Kimi强不少

最近几天&#xff0c;国内 AI 创业公司正在连续刷新大模型的能力上限。 5 月 22 日&#xff0c;百川智能发布最新一代基座大模型 Baichuan 4&#xff0c;同时推出了首款 AI 助手「百小应」。 相较 1 月份发布的 Baichuan 3&#xff0c;新一代模型在各项能力上均有大幅提升&am…