logo
积分中心
用 AI Coding 实现列表搜索与分类筛选:从能显示到好用 #向光而行 码向未来
头像 程序员小初音 2026-10-21 17:07:08    发布
0 浏览 0 点赞 0 收藏

列表页面看起来简单,真正做起来却有不少细节:搜索和分类是否同时生效、切换条件后是否保留旧结果、空列表如何展示、数据量增加后是否还流畅。AI Coding 可以快速生成基础逻辑,但如果没有明确规则,很容易只实现一个表面可用的版本。

我的做法是先确定筛选逻辑。比如搜索关键词匹配物品名称和地点;分类条件独立于关键词;两个条件同时存在时采用 AND 关系;用户清空关键词后,仍保留当前分类。然后再让 AI 根据这些规则编写过滤函数。

下面把过滤逻辑单独抽出来,页面组件只负责接收条件和展示结果,后续更容易测试。

代码示例

interface LostItem {

 id: string

 name: string

 location: string

 category: string

}

function filterItems(

 items: LostItem[],

 keyword: string,

 category: string

): LostItem[] {

 const key = keyword.trim().toLowerCase()

 return items.filter((item: LostItem) => {

   const matchesKeyword = !key ||

     item.name.toLowerCase().includes(key) ||

     item.location.toLowerCase().includes(key)

   const matchesCategory = category === '全部' || item.category === category

   return matchesKeyword && matchesCategory

 })

}

让 AI 写完后,我会重点测试组合场景:先选“数码”,再搜索“图书馆”;清空搜索词但不取消分类;搜索不存在的地点;切换分类后检查列表是否正确刷新。单独测试搜索和分类都通过,不代表两者组合起来一定正确。

如果列表来自服务端,还要考虑哪些筛选放在客户端、哪些交给接口处理。小数据集可以在本地过滤;数据量较大时,通常应让服务端承担搜索、分页和排序,避免一次加载全部记录。

开发者要把数据规模和接口能力告诉 AI,而不是让它凭空决定架构。对于排序规则,也要明确“最新”“最热”“附近”分别依赖哪些字段,避免界面入口存在、背后却没有可靠的数据依据。

©本站发布的所有内容,包括但不限于文字、图片、音频、视频、图表、标志、标识、广告、商标、商号、域名、软件、程序等,除特别标明外,均来源于网络或用户投稿,版权归原作者或原出处所有。我们致力于保护原作者版权,若涉及版权问题,请及时联系我们进行处理。
分类
HarmonyOS
地址:北京市朝阳区北三环东路三元桥曙光西里甲1号第三置业A座1508室 电话:13391790444或(010)62178877
版权所有:电脑商情信息服务集团 北京赢邦策略咨询有限责任公司
声明:本媒体部分图片、文章来源于网络,版权归原作者所有,我司致力于保护作者版权,如有侵权,请与我司联系删除

京ICP备:2022009079号-2

京公网安备:11010502051901号

ICP证:京B2-20230255