智慧商城:搜索页面基于商品名称进行搜索,分类页面点击商品进行搜索。(跳转到商品列表页面,地址栏携带的参数作为请求的参数进行请求,然后动态渲染)

基于搜索关键字来进行渲染

笔记中直接 cv 搜索列表静态布局

点击搜索手机就是这样子

组件中没有任何渲染,需要请求参数进行渲染 。

查询参数前两个是关于排序的,目前走的是最短路径,所以只需要关注后面三个。

categoryId:除了进行商品名字跳转到分类页搜索,还能点击分类页中分类的商品跳转到分类页进行搜索

goodsName:基于名称进行搜索

page:分页,如果搜索内容超过一页,右边传入page2,page3

封装接口

在api文件夹下product.js文件中封装请求方法请求商品列表页面请求数据渲染的方法

上节搜索框输入内容搜索,或者点击历史记录进行搜索,将历史记录存入本地之后就跳转到该商品列表页面,并且携带传入搜索列表框中搜索内容。

商品列表页面对地址栏中传递过来的参数进行接收,搜索页是通过查询参数传参,商品列表页面通过query接收,参数名是search

跳转方式有两种 path 和 命名路由, 传参方式有两种 query查询参数传参 和 params传参。 接收参数有两种 query接收和params接收

在分类页点击商品是不传递参数的,或者搜索页面不传递参数只是点击搜索,同样也是不传递参数的

在 创建完成created就发送请求请求数据,发送请求时只传入了商品名称和翻页数量,打印出来可以看到请求的数据

解构出 list ,并且将list中的数据存入准备好的空数组proList中

基于proList对GoodsItem组件进行渲染,然后在该商品列表中通过组件标签引入

此前在首页商品渲染中将商品渲染封装为组件GoodsItem,然后在首页中请求商品数据进行渲染,现在是在商品列表中请求商品数据在该商品列表中进行渲染。

也就是首页和商品列表页面各自请求商品数据在商品组件中进行渲染,然后调用组件标签在自己的页面显示。反正是请求了数据才进行渲染

通过搜索页面传递过来的参数作为商品名称为 发送请求时的参数去请求数据来进行渲染

基于分类页进行渲染

封装接口发请求,获取数据,完成页面渲染,渲染完了加个点击事件

封装分类页面请求

在api文件夹下新建category.js文件封装请求方法

直接笔记中 cv 分类页静态结构

  • 与通过商品名称搜索跳转到商品列表页面一样
  • 点击分类页的商品,也能跳转到商品列表 ,并且点击的商品自动在商品列表地址栏上携带参数categoryId

接下来就应该是商品列表页面接收参数,作为请求中的参数,发送请求,响应回来数据进行渲染

相关推荐
烬羽12 小时前
给 Agent 一个检索式记忆:把对话历史存进 Milvus,该记的都记得
javascript·数据库·agent
磐链科技12 小时前
区块链开发入门实战:用 Hardhat 与 Ethers.js 搭建你的第一个 DApp
开发语言·javascript·区块链
码艺-Alimjan12 小时前
维吾尔语数字转文本
java·javascript·python·算法·go
可乐鸡翅yeah_12 小时前
hls.js 多实例并发踩坑,多视频页面播放器内存与冲突问题解决
开发语言·前端·javascript·音视频·hls·m3u8·m3u8在线播放
涛涛ing13 小时前
你的页面为什么总是卡成PPT?2026年,90%的前端都忽略了主线程
前端
SoaringHeart13 小时前
Flutter 进阶 | 组件封装:用 CustomPainter 实现光环动画组件AnimatedHalo
前端·flutter
IT_陈寒13 小时前
JavaScript的隐式转换太坑了,我的==比较怎么就炸了?
前端·人工智能·后端
雪芽蓝域zzs13 小时前
第十四节:后端返回权限动态路由
前端·javascript·vue.js
小磊哥er13 小时前
Wonder Claude Code - 一个可运行的、教学级的 Claude Code 精简复刻
javascript·ai编程
Rain50913 小时前
谁动了我的 URL?——记一次微前端“灵异 Bug“的排查实录
前端·vue.js·人工智能·前端框架·bug·ai编程