黑色星期五是哪一天?黑色星期五有哪些品牌在做活动?

黑色星期五是哪一天?黑色星期五有哪些品牌在做活动?,第1张

本篇文章主要介绍了微信小程序实战篇之购物车的实现代码示例,详细的介绍了购物车的功能实现,具有一定的参考价值,有兴趣的可以了解一下

哈喽,大家好,快半个月没写了,现在提笔都有点生硬了,一直没更新的原因,一个是代码君也要上班,加上最近工作比较忙,还有就是写文章一直未被认可,所以没什么动力再创作了,那时真的坚持不下去,打算放弃了,感谢读者曹明,一个韩国的研究生读者,支持我,并给我鼓励,期待我更新下一篇,我非常感动,瞬间战斗力恢复,其实你们简单的点赞,评论,都是给我最大的支持,好了,煽情完毕,该讲今天的重点了,购物车,购物车的界面实现到不是很难,难点是处理里面的逻辑,无论是小程序,还是APP,购物车的逻辑都是最难的,下面开始教大家如何实现购物车了,先上效果图

购物车实现

cartwxml

<import src="/template/quantity/indexwxml" />

<scroll-view class="scroll" scroll-y="true">

<view class="separate"></view>

<view wx:for="{{carts}}">

<view class="cart_container">

<image class="item-select" bindtap="switchSelect" data-index="{{index}}" data-id="{{index}}" src="{{itemisSelect'//images/cart/comment_selectpng':'//images/cart/comment_normalpng'}}" />

<image class="item-image" src="{{itempic}}"></image>

<view class="column">

<text class="title">{{itemname}}</text>

<view class="row">

<text class="sku-price">¥</text>

<text class="sku-price">{{itemprice}}</text>

<view class="sku">

<template is="quantity" data="{{ itemcount, componentId: index }}" />

</view>

</view>

</view>

</view>

<view class="separate"></view>

</view>

</scroll-view>

<view class="bottom_total">

<view class="bottom_line"></view>

<view class="row">

<image class="item-allselect" bindtap="allSelect" src="{{isAllSelect'//images/cart/comment_selectpng':'//images/cart/comment_normalpng'}}" />

<text class="small_text">全选</text>

<text>合计:¥ </text>

<text class="price">{{totalMoney}}</text>

<button class="button-red" bindtap="toBuy" formType="submit">去结算</button>

</view>

</view>布局不是很复杂,一个循环列表,循环出购物车商品,外加一个结算的底部控件,还需要提醒的是,循环列表外面要加一层scroll-view,这样当数据很多是时候,可以滚动,不熟悉scroll-view的,请自行翻看前面几篇文章,里面有讲解

catwxss

/ pages/cart/cartwxss /

cart_container {

display: flex;

flex-direction: row;

}

scroll {

margin-bottom: 120rpx;

}

column {

display: flex;

flex-direction: column;

}

row {

display: flex;

flex-direction: row;

align-items: center;

}

sku {

margin-top: 60rpx;

margin-left: 100rpx;

}

sku-price {

color: red;

position: relative;

margin-top: 70rpx;

}

price {

color: red;

position: relative;

}

title {

font-size: 38rpx;

margin-top: 40rpx;

}

small_text {

font-size: 28rpx;

margin-right: 40rpx;

margin-left: 10rpx;

}

item-select {

width: 40rpx;

height: 40rpx;

margin-top: 90rpx;

margin-left: 20rpx;

}

item-allselect {

width: 40rpx;

height: 40rpx;

margin-left: 20rpx;

}

item-image {

width: 180rpx;

height: 180rpx;

margin: 20rpx;

}

bottom_line {

width: 100%;

height: 2rpx;

background: lightgray;

}

bottom_total {

position: fixed;

display: flex;

flex-direction: column;

bottom: 0;

width: 100%;

height: 120rpx;

line-height: 120rpx;

background: white;

}

button-red {

background-color: #f44336; / 红色 /

}

button {

position: fixed;

right: 0;

color: white;

text-align: center;

display: inline-block;

font-size: 30rpx;

border-radius: 0rpx;

width: 30%;

height: 120rpx;

line-height: 120rpx;

}wxss样式没什么可说的,了解其属性,调用class就好,重点说一下cartjs,全篇的逻辑都在这里面

cartjs

// pages/cart/cartjs

var Temp = require('//template/contractjs');

Page(Objectassign({}, TempQuantity, {

data: {

isAllSelect:false,

totalMoney:0,

// 商品详情介绍

carts: [

{

pic: "http://mzdjmallxmispcn/files/product/20161201/148058328876jpg",

name:"日本资生堂洗颜",

price:200,

isSelect:false,

// 数据设定

count: {

quantity: 2,

min: 1,

max: 20

},

},

{

pic: 'http://mzdjmallxmispcn/files/product/20161201/148058301941jpg',

name: "倩碧焕妍活力精华露",

price: 340,

isSelect: false,

// 数据设定

count: {

quantity: 1,

min: 1,

max: 20

},

},

{

pic: 'http://mzdjmallxmispcn/files/product/20161201/14805828016jpg',

name: "特效润肤露",

price: 390,

isSelect: false,

// 数据设定

count: {

quantity: 3,

min: 1,

max: 20

},

},

{

pic: 'http://mzdjmallxmispcn/files/product/20161201/148058228431jpg',

name: "倩碧水嫩保湿精华面霜",

price: 490,

isSelect: false,

// 数据设定

count: {

quantity: 1,

min: 1,

max: 20

},

},

{

pic: 'http://mzdjmallxmispcn/files/product/20161201/148057953326jpg',

name: "兰蔻清莹柔肤爽肤水",

price: 289,

isSelect: false,

// 数据设定

count: {

quantity: 10,

min: 1,

max: 20

},

},

{

pic: "http://mzdjmallxmispcn/files/product/20161201/148057921620_middlejpg",

name: "LANCOME兰蔻小黑瓶精华",

price: 230,

isSelect: false,

// 数据设定

count: {

quantity: 1,

min: 1,

max: 20

},

},

],

},

//勾选事件处理函数

switchSelect: function (e) {

// 获取item项的id,和数组的下标值

var Allprice = 0,i=0;

let id = etargetdatasetid,

index = parseInt(etargetdatasetindex);

thisdatacarts[index]isSelect = !thisdatacarts[index]isSelect;

//价钱统计

if (thisdatacarts[index]isSelect) {

thisdatatotalMoney = thisdatatotalMoney + thisdatacarts[index]price;

}

else {

thisdatatotalMoney = thisdatatotalMoney - thisdatacarts[index]price;

}

//是否全选判断

for (i = 0; i < thisdatacartslength; i++) {

Allprice = Allprice + thisdatacarts[i]price;

}

if (Allprice == thisdatatotalMoney)

{

thisdataisAllSelect=true;

}

else

{

thisdataisAllSelect = false;

}

thissetData({

carts: thisdatacarts,

totalMoney: thisdatatotalMoney,

isAllSelect: thisdataisAllSelect,

})

},

//全选

allSelect: function (e) {

//处理全选逻辑

let i = 0;

if (!thisdataisAllSelect)

{

for (i = 0; i < thisdatacartslength; i++) {

thisdatacarts[i]isSelect = true;

thisdatatotalMoney = thisdatatotalMoney + thisdatacarts[i]price;

}

}

else

{

for (i = 0; i < thisdatacartslength; i++) {

thisdatacarts[i]isSelect = false;

}

thisdatatotalMoney=0;

}

thissetData({

carts: thisdatacarts,

isAllSelect: !thisdataisAllSelect,

totalMoney: thisdatatotalMoney,

})

},

// 去结算

toBuy() {

wxshowToast({

title: '去结算',

icon: 'success',

duration: 3000

});

thissetData({

showDialog: !thisdatashowDialog

});

},

//数量变化处理

handleQuantityChange(e) {

var componentId = ecomponentId;

var quantity = equantity;

thisdatacarts[componentId]countquantity = quantity;

thissetData({

carts: thisdatacarts,

});

}

}));介绍一下用到的参数

isAllSelect:是否全选

totalMoney:总金额

carts :购物车商品数据

switchSelect 勾选按钮需要做的逻辑处理

判断是否达到全部勾选,如果全部勾选,底部的全选按钮要点亮,判断依据是,价钱是否等于总价,当然这只是一种判断方式,读者也可以通过勾选的数量判断,

对勾选或取消的按钮,进行总价的加减法计算

thissetData,更新数据,这个是重点,每次处理完数据,都要记得更新数据

allSelect 全选按钮的逻辑处理

全选就把每个item勾选图标点亮,然后统计总价钱,不全选就置为灰色,总价钱为0

thissetData更新数据

微信小程序数据处理

一、修改数据方式

data:{

name:'我是初始化的name'

}1、thisdataname

thisdataname='我是代码君data'2、thissetData

thissetData({

name:'我是代码君setData'

})这两种方式都可以改变数据,thissetData的好处是可以有刷新的效果,即实时更新数据

二、修改对象数组

data:{

person:{

name:'代码君',

city:'厦门'

}

}修改全部对象

thissetData({

person:{

name:'新代码君',

city:'湖南'

}

})修改部分数据

thissetData({

'personname': '代码君只修改名字'

})

//多个数组用这个

thissetData({

'person[0]name': '代码君只修改名字'

})三、添加删除数据

1、添加数据concat

//假设这一段是我们要新增的数组

var newarray = [{

name:'增加的数据--'+new Date()getTime() ,

}];

//向前--用newarray与thisdatalist合拼

thisdatalist = newarrayconcat(thisdatalist);

//向后--用thisdatalist与newarray合拼

thisdatalist = thisdatalistconcat(newarray);2、删除数据splice()删除数据,然后返回被删除的数据

//删除

remove:function (e){

var dataset = etargetdataset;

var Index = datasetindex;

//通过index识别要删除第几条数据,第二个数据为要删除的项目数量,通常为1

thisdatalistsplice(Index,1);

//渲染数据

thissetData({

list:thisdatalist

});

}3、清空数据

//清空

clear:function (){

//其实就是让数组变成一个空数组即可

thissetData({

list:{}

});

}上面是我整理给大家的,希望今后会对大家有帮助。

相关文章:

使用dataset如何实现延时加载

在jquery中有关手机触屏滑动功能

在Mac中如何安装nvm(详细教程)

在微信小程序中如何实现时间功能

用你的用户名和密码登陆,找到购买记录直接删除就行。

兰蔻官网精品商城是兰蔻官方开通的微信小程序,可以通过兰蔻官网精品商城购买到兰蔻的彩妆和护肤产品,是兰蔻官方销售的,不是代理的,所以兰蔻官网精品商城里的东西都是有保证的正品。通过兰蔻的微信平台,感兴趣的消费者还可以预约兰蔻中国资深化妆师团队,进行一对一的彩妆咨询服务。

兰蔻Lancome来自法国的世界知名美妆品牌,兰蔻唯一官网暨官方商城提供:女士护肤、彩妆、香水、男士护肤等产品信息和美颜方案。

Hello,大家好!经常很多小可爱会问咖姐:

这款护肤品适合我吗❓

欢迎分享,转载请注明来源:品搜搜测评网

原文地址:https://pinsoso.cn/meirong/1582742.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-10-03
下一篇2023-10-03

随机推荐

  • 保湿精华推荐

    精华,是护肤品中之极品,成分精致、功效强大、效果显著,所提取的都是高营养物质并将其浓缩。精华液是护肤品中的重中之重,从称呼就可以判断初精华液是所有护肤品的精华,正常来说,用再多的护肤品,如果不用精华液都是无济于事,尤其是对熟龄肌肤或者是问题

    2024-04-15
    1031500
  • 绿嫩香品园蚕丝套套盒怎么样

    都挺出众的。绿嫩是一个专注于肌肤护理的企业,旗下的护肤品、化妆品品质都挺出众的,绿嫩旗下的改善暗沉、补水修复套盒,真心非常好用。暗沉得到了修复,而且季节性过敏的问题也得到了缓解。欧惠这个品牌是起源于韩国的一个顶级护肤品牌了,也算是一个很高端

    2024-04-15
    50300
  • sk2精华露使用顺序

    第1个步骤就是先进行面部的清洁,清洁完了之后需要在脸上拍一点爽肤水,接着需进一步的修复,用旗下的补水保湿修复精华露来进行修复,那这款精华露当中所含有的pitera乃是神仙水的整整4倍,所以能达到强效保湿补水的效果,绝对是干皮的救星。在这个步

    2024-04-15
    48500
  • 有没有人听说过艾纳菲这个牌子的护肤品呢?套装的价格方面是多少钱呢?效果好么?对比起兰蔻产品那个好用

    你能买到艾纳菲品牌化妆品的地方,那里的服务人员就会告诉你药监局备案码告诉你怎么查,正规厂家产品至于价格方面,每个区域都不同对比兰蔻,没有可比性,兰蔻基础保养艾纳菲专业线,更有针对性,美白效果很好安全。艾纳菲护肤品是正规厂家的产品,定位比较高

    2024-04-15
    44500
  • 问:啊阿啊。听说最近 同仁堂出了一款叫素瘦的产品 排毒 养颜 减肥 塑性。好用吗

    你好,减肥方法有多种,其中控制饮食是最主要的。 建议您在减肥的过场中要严格控释饮食,每天要少吃多餐,多吃水果以补充每天所需的维生素,还要控制每天的饮水量,最重要的还要适 量运动巩固减肥成果。减肥是一个艰苦漫长的过程,重在坚持以为同仁堂是老字

    2024-04-15
    31200
  • 舒耐 妮维雅 曼秀雷敦止汗,哪个更好?

    舒耐 最好 毕竟是最专业的止汗露 就是比别的贵点如果你在家用 就用喷雾的 卫生 不会污染到里面如果想外出随时都用建议用走珠的 因为喷雾必须脱掉衣服你不可能在公共卫生间脱衣服用 不如走珠的方便用过一些,我总结一下吧雅芳和妮维雅这些

    2024-04-15
    28600
  • 潍坊有什么名吃?

    潍坊小吃主要有临朐全羊宴、杠子头火烧、景芝金丝面、诸城辣丝子、朝天锅、鸡鸭和乐、城隍庙火烧、景芝三页饼、绿豆糕、箱中藏宝、芝畔烧肉、小炒肉、马宋饼等。1、潍坊朝天锅此宴用鸡肉、驴肉煨汤,以煮全猪为主,有猪头、肝、肺、心、肚、肠,再配以甜面酱

    2024-04-15
    28200

发表评论

登录后才能评论
保存