推广 热搜:   中国  公司  行业  设备  快速  企业  上海  未来  技术 

Vue3移动端外卖小程序的搭建 与购物车功能的实现!

   日期:2024-11-26     移动:http://www78564.xrbh.cn/mobile/quote/25068.html

移动端与pc端不同,需要更多的考虑em,rem的单位转化,各个手机型号完美适配。对新手而言,这是一个难点。接下来我将以一个外卖移动端为例子进行讲解。

Vue3移动端外卖小程序的搭建 与购物车功能的实现!

目录

一、屏幕的适配插件

二、预编译器

三、pinia实现购物车功能

1、商品总数

2、单个商品个数增加

3、单个商品个数减少

4、总价

5、清空购物车


1、安装

  •  :这个插件的作用是将CSS中的像素单位(px)转换为相对于根元素字体大小的rem单位。这样做的好处是,它可以帮助开发者创建响应式设计,使得在不同设备上显示的元素大小可以根据屏幕大小进行缩放。
  • :这个插件是阿里巴巴的一个前端团队开发的,它的作用是让移动端页面的尺寸单位统一为rem,并且可以方便地在不同设备上进行适配。它通过修改根元素的font-size来实现这一点。
 

2、配置

  • :这是调用插件的地方。
  • :这个选项指定了根元素(html元素)的字体大小,这里设置为16px。这意味着1rem等于16px。
  • :这个选项指定了需要转换为rem单位的CSS属性列表。这里使用表示所有属性都将被转换。
 

3、引入amfe-flexible,实现伸缩布局

在你的项目的入口文件(通常是或)中引入

 

这行代码会将的样式应用到你的整个项目中。

这样你的移动端页面在检查时拖拽,大小宽高就会跟着变化啦

是一个 webpack 模块加载器,用于将 LESS 文件编译成 CSS。

 
 
 

购物车没有商品时 

Vue3移动端外卖小程序的搭建 与购物车功能的实现!

购物车有商品时 

Vue3移动端外卖小程序的搭建 与购物车功能的实现!

点击购物车图标会显示购物清单


我们不难发现,商品总个数,单个个数,单价,总价,需要在多个组件中用到,所以我们把它们存到Pinia仓库中集中管理。

Pinia仓库的搭建与安装不多赘述。购物车上方的小红点即是点击+号就会增加的商品总数。

total属性初始为0,每点击+号就会调用increment方法给 total 加1

 
 
 

在仓库中创建cartItems存储被点击的项和价格

{ ...item, count: 1 } 如果item中没有count属性,则添加,如果有则覆盖。

 
 

和个数增加的逻辑差不多,但需要判断count为0时移除列表。

 
 

在仓库中创建totalAmount存储总价,初始为0。

 
 
 

在组件中调用仓库绑定仓库中的点击事件就可以啦~

配套后台管理系统实现请移步本人另一篇

本文地址:http://www78564.xrbh.cn/quote/25068.html    迅博思语 http://www78564.xrbh.cn/ , 查看更多

特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。


相关最新动态
推荐最新动态
点击排行
网站首页  |  二维码  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  粤ICP备2023022329号