实现效果:

image.png

实现功能:

商品数量的增加与减少,多选与全选,商品删除,总价的计算,数量的计算

实现代码:

购物车暂无商品

去下单

尺码:{{item.size}}

¥{{item.price}}/件

-

{{item.num}}

+

全选

总计:¥ {{totalPrice}}

结算({{totalNum}})

import uniNumberBox from "@/components/uni-number-box/uni-number-box.vue"

import wybPopup from '@/components/wyb-popup/wyb-popup.vue'

import ypNumberBox from "@/components/yp-number-box/yp-number-box.vue"

export default{

components: { wybPopup,ypNumberBox,uniNumberBox},

data(){

return{

show:true,

allchecked:true,

checked:true,

size:[

{

size:"女款-XXL",

num:2,

flag:true,

price:149,

goodsImage:"https://img.alicdn.com/imgextra/i1/33174842/O1CN0141Hygt1ldgNvqvmeW_!!0-saturn_solar.jpg_468x468q75.jpg_.webp",

},

{

size:"女款-XL",

num:1,

flag:true,

price:149,

goodsImage:"https://img.alicdn.com/imgextra/i1/33174842/O1CN0141Hygt1ldgNvqvmeW_!!0-saturn_solar.jpg_468x468q75.jpg_.webp",

},],

}

},

methods:{

placeOrder(){

uni.navigateTo({

url:'../order/index'

})

},

delht(item,index){

// this.size.splice(index, 1)

uni.showModal({

content:'是否删除此商品',

success:(res)=>{

if(res.confirm) {

console.log('确定');

this.size.splice(index,1)

if(this.size.length ==0){

this.show = false

}

}else if(res.cancel){

console.log('取消')

}

}

})

},

change(e){

console.log(e)

},

selected(item){

item.flag = !item.flag

if (!item.flag) {

this.allchecked = false

} else {

const test =this.size.every(item => {

return item.flag === true

})

if (test) {

this.allchecked = true

} else {

this.allchecked = false

}

}

// this.checked=!this.checked

// this.totalNum()

},

selectedall(){

this.allchecked = !this.allchecked

if (this.allchecked) {

this.size.map(item => {

this.checked = true

item.flag = true

})

} else {

this.checked = false

this.size.map(item => {

item.flag = false

})

}

},

reduce(item){

let num =item.num

// item.num = num-1

// if(num <=0){

// return;

// }

if(num>0){

num-=1

}else{

num=0

return

}

item.num =num

},

add(item){

console.log(item.num)

let num =item.num

item.num=num+1

}

},

computed: {

//计算选中商品的总价

totalNum() {

let totalNum = 0;

this.size.map(item => {

item.flag ? totalNum += item.num : totalNum += 0

})

return totalNum

},

totalPrice() {

let totalPrice = 0;

this.size.map(item => {

item.flag ? totalPrice += item.num * item.price : totalPrice += 0

})

return totalPrice

}

},

}

.goods{

line-height: 80rpx;

background-color: #fff;

&-top{

display: flex;

justify-content: space-between;

align-items: center;

padding: 0 30rpx;

border-bottom: 8rpx solid #F1F1F1;

.name{

color: #333;

font-size: 31rpx;

font-weight: bold;

}

}

&-detail{

display: flex;

padding: 30rpx 15rpx 30rpx 30rpx;

background-color: #fff;

justify-content: space-between;

border-bottom: 5rpx solid #F1F1F1;

align-items: center;

.detail-left{

display: flex;

.left{

display: flex;

align-items: center;

}

}

.size{

display: flex;

justify-content: space-around;

flex-direction: column;

margin-left: 30rpx;

.goods-price{

font-size: 25rpx;

color: #F44545;

}

}

.right{

text{

width: 50rpx;

line-height: 50rpx;

text-align: center;

display: inline-block;

background-color: #F7F7F7;

margin-right: 10rpx;

}

.add {

color: #FA4305;

border-radius: 10rpx 30rpx 30rpx 10rpx;

margin-right: 20rpx;

}

.subtract{

border-radius: 30rpx 10rpx 10rpx 30rpx;

}

}

}

}

.notGoods{

position: relative;

top: 220rpx;

text-align: center;

display: flex;

align-items: center;

flex-direction: column;

// line-height: 1334rpx;

&-text{

color: #808080;

margin-bottom: 50rpx;

}

&-button{

width: 260rpx;

height: 70rpx;

color:#F44545;

border: 1rpx solid #F44545;

text-align: center;

line-height: 70rpx;

border-radius: 48rpx;

}

}

.end{

width: 100%;

height: 90rpx;

background-color:#fff;

position: fixed;

bottom: 100rpx;

left: 0;

display: flex;

align-items: center;

&-left{

width: 70%;

display: flex;

justify-content: space-between;

padding: 0 30rpx;

.end-flex{

display: flex;

align-items: center;

}

}

&-right{

width: 30%;

line-height: 90rpx;

background-color: #F44545;

text-align: center;

color: #fff;

}

}

uni的numberbox怎么用_uni-app购物车功能相关推荐

  1. Android购物车存储,Android app购物车功能实现

    8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? UI效果图如下: 实现购物车功能的要点:购物车UI的布局 购物车里面商品数量是保存在本地数据库sqlite,要保证UI上 ...

  2. uniapp实现购物车功能

    uniapp实现购物车功能 周六我看见一个有个公司招聘需要试岗3天,并使用uniapp完成购物车,直播间,地图,首页四个功能方能通过,于是乎,我趁手上没事就打算自己写一遍,虽然我的项目没用到,但是多掌 ...

  3. vue实战记录(二)- vue实现购物车功能之创建vue实例

    vue实战,一步步实现vue购物车功能的过程记录,课程与素材来自慕课网,自己搭建了express本地服务器来请求数据 作者:狐狸家的鱼 本文链接:vue实战-实现购物车功能(二) GitHub:sue ...

  4. 基于vue2.0打造移动商城页面实践 vue实现商城购物车功能 基于Vue、Vuex、Vue-router实现的购物商城(原生切换动画)效果...

    基于vue2.0打造移动商城页面实践 地址:https://www.jianshu.com/p/2129bc4d40e9 vue实现商城购物车功能 地址:http://www.jb51.net/art ...

  5. android购物车栏,Android怎么实现二级列表购物车功能

    Android怎么实现二级列表购物车功能 发布时间:2021-04-16 12:45:40 来源:亿速云 阅读:61 作者:小新 小编给大家分享一下Android怎么实现二级列表购物车功能,希望大家阅 ...

  6. 【愚公系列】2022年10月 微信小程序-电商项目-商品购物车功能实现

    文章目录 前言 一.商品购物车功能实现 二.效果 前言 在电商的核心交易流程中,购物车是其中非常重要的一环,它承担商品加购.价格计算.促销活动展示等功能,与会员系统.商品系统.库存系统.订单系统等紧密 ...

  7. android 购物车实现,Android Studio实现简单购物车功能

    Android Studio实现简单购物车功能 发布时间:2020-08-30 17:23:56 来源:脚本之家 阅读:241 作者:攀岩嘉 本文实例为大家分享了Android九宫格图片展示的具体代码 ...

  8. 视频号灰度测试购物车功能,微信要扛起腾讯电商大旗了?

    微信一直承载着腾讯的电商野望. 据自媒体百准报道,除了直播,微信视频号目前正在灰度测试短视频购物车功能,这被视为微信加码电商业务的一大跨步. 早在2014年,腾讯就在微信公众号上线了微信小店插件,作为 ...

  9. 【O2O领域】外卖订餐APP用户端Axure原型作品(覆盖外卖APP主流功能)

    作品说明 作品页数:共 242 页 文件大小:16.6 MB 支持软件:Axure RP 8/9/10 应用领域:O2O领域,网上订餐,外卖行业 作品特色 该原型作品为外卖订餐APP用户手机端,定位属 ...

  10. android购物车代码简述,Android实现简单购物车功能

    本文实例为大家分享了Android实现购物车功能的具体代码,供大家参考,具体内容如下 MainActivity布局: android:layout_width="match_parent&q ...

最新文章

  1. elasticsearch使用指南之Elasticsearch Document Index API详解、原理与示例
  2. java 高并发mqtt服务器_Boomer 实战压测 mqtt,2w 并发轻松实现
  3. WPF 可触摸移动的ScrollViewer控件
  4. Java Web开发之一:用好的技术设计来犒赏自己
  5. Hurdles of 110m ZOJ - 2972 (简单DP)
  6. php砸金蛋程序,简单的几句PHP生成美团3周年砸金蛋抽奖代码
  7. 【linux】具体芯片MACHINE_START处理
  8. 不要效法世界只要爱天父
  9. SAP 标准Status拷贝(SE41 SAPLSLVC_FULLSCREEN -> STANDARD_FULLSCREEN )
  10. 电子设备常见的音视频接口
  11. 约瑟夫环两种解题方式
  12. 企业成本核算程序是怎样?一般采用什么方法
  13. QT中的explicit关键字的意思
  14. 达到英语欧洲语言C2级的书有,剑桥少儿英语二级书
  15. 【最佳实践】gorm 联表查询 joins
  16. 服务器响应404,无法加载资源错误:服务器响应状态为404(未找到)
  17. axios(5)——请求拦截器和响应拦截器
  18. 这些年我们还在使用的国内国外域名注册商
  19. 使用webpack打包TS时遇到的问题
  20. python bs4 BeautifulSoup

热门文章

  1. qtcpsocket断开_关于QSocket的释放的一个需要注意的情况(必须先断开连接)
  2. opboot怎么刷入固件_竞斗云系列四:Opboot1.09+128M固件刷机
  3. 转载HTML实体字符
  4. MIUI9系统怎么卡刷开发版获取ROOT超级权限
  5. 2017年博客第一篇随笔
  6. 【已解决】极速迅雷win10闪退解决方案
  7. 为什么精英这样用脑不会累
  8. 【TF2】Eager Execution机制
  9. 【微信小程序】rpx
  10. python tkinter 日历