给定一个输入框,一个搜索点击按钮,当输入框获得焦点时提示用户最近搜索内容,如何实现,有哪些方法。从哪些方面测试以保障其健壮性。
用户搜索记录一般存在数据库中,当用户打开你的站点之时,就默认加载最近的记录到redis等缓存中,然后输入框获得焦点时就触发js事件,用ajax去从后台获得相应的数据,后台直接从缓存中获取数据返回给前端。缓存的主要作用是一个用户在一次搜索过程中只需触发一次数据库操作。用户搜索后更新缓存,当用户退出站点后,缓存更新到数据库。
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答2.3k 阅读✓ 已解决
3 回答2.1k 阅读✓ 已解决
说说思路。
建立一个隐藏的ul列表,待选项在列表里面。
把曾经的输入内容以数组的形式存储在localstorage内。
设置待选列表数组的最大长度,先进后出。
把数组内容提取并渲染到列表上。