版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
项目七购物车模块开发任务二购物车页面详情ShoppingcartpageDetails
购物车页面设计应该注重用户界面的友好性和直观性。购物车页面应该具有清晰简洁的布局,突出显示重要信息,让用户一目了然。购物车详情页面应该包括商品名称、价格、数量、小计、删除和结算等基本信息。项目七购物车模块开发任务描述购物车商品列表属性类型描述bindchangeEventHandlecheckbox-group选中项发生改变时触发change事件,detail={value:[选中的checkbox的value的数组]}属性类型默认值描述valuestring
checkbox标识,选中时触发checkbox-group的change事件,并携带checkbox的valuedisabledbooleanfalse是否禁用checkedbooleanfalse当前是否选中,可用来设置默认选中colorstring#09BB07checkbox的颜色,同css的color
checkbox-group多项选择器,内部由多个checkbox组成。
购物车里的商品左边有复选框,使用小程序的表单组件checkbox,该组件包含了四个属性值。购物车商品数量
为商品数量“-”和“+”按钮添加reduceCount和addCount函数,实现购物车商品数据的增加与减少。购物车商品数量data:{
users:[
{name:'小明',age:28},
{name:'小红',age:39},
{name:'小李',age:40},
{name:'小张',age:30}
]},onLoad(options){
letinfo=this.data.users;
info.forEach(function(item,index){
console.log(index+'姓名:'+info[index].name+'年龄:'+info[index].age);
})
info.forEach((item,index)=>{
console.log(index+'姓名:'++'年龄:'+item.age);})}
forEach()方法用于调用数组的每个元素,并将元素传递给回调函数。购物车商品数量
settleCount(){
let
totalPrice=0;
this.data.cartList.forEach(item=>{
if(item.isChecked){
totalPrice+=item.salePrice*item.
quantity
}
})
this.setData({
totalPrice:totalPrice
})
},
在pages/goodsCart/goodsCart.js文件中,不管是减号还是加号按钮,当点击时,都需要进行总金额的计算,所以先完成计算总金额函数settleCount,获得选中的商品,如果商品isChecked属性为真时,则对商品的金额进行计算。代码如下。购物车商品列表
<view
class="oper">
<view
class="reduce"data-id="{{item.id}}"
bindtap="reduceCount"
>-</view>
<input
value="{{item.quantity}}"
type="number"/>
<view
class="add"
data-id="{{item.id}}"
bindtap="addCount">+</view>
<viewclass="btn-del"data-index="{{item.id}}"bindtap="btnDel">删除</view></view>购物车底部信息
<view
class="total-cart">
<view
class="all">
<checkbox-group
bindchange="checkAll">
<checkbox
value="1"
checked="false"></checkbox>
<text>全选</text>
</checkbox-group>
</view>
<view
class="total-price">
总价:<text
class="price">¥{{totalPrice}}</text>
</view>
<view
class="btn
btn-primary">去结算</view>
</view>
购物车底部信息包含了三个内容,全选的复选框,选中的商品总价,结算按钮。在pages/goodsCart/goodsCart.wxml文件中,为"total-cart"视图容器编写页面布局代码:购物车为空状态<view
wx:else
class="no-result">
<view
class="no-content">
<image
src="/images/cring.png"></image>
<text>暂无商品</text>
<button
class="go-list"
bindtap="gotoList">前往添加商品</button>
</view></view>
当购物车页面为空时,购物车页面将定向到商品列表页面。购物车为空状态
gotoList:function(){
wx.navigateTo({
url:
'/pages/goodsList/goodsList'
})
}
在pages/goodsCart/goodsCart.js文件中,实现bindtap="gotoList",当购物车为空时,跳转到商品列表页面选购商品。购物车为空状态表wx.navigateTo参数属性类型必填描述urlstring是需要跳转到应用内非tabBar页面的路径(代码包路径),路径后可以带参数。参数与路径之间使用?分隔,参数键与参数值用=相连,不同参数用&分隔;如'path?key=value&key2=value2'eventsObject否页面间通信接口,用于监听被打开页面发送到当前页面的数据。successfunction否接口调用成功的回调函数,eventChannel参数,和被打开页面进行通信failfunction否接口调用失败的回调函数completefunction否接口调用结束的回调函数(调用成功、失败都会执行)
wx.navigateTo(Objectobject)保留当前页面,跳转到应用内的某个页面。但是不能跳到tabbar页面。使用wx.navigateBack可以返回到原页面。小程序中页面栈最多十层。购物车为空状态
wx.navigateTo({
url:'test?id=1',events:{//为指定事件添加一个监听器,获取被打开页面传送到当前页面的数据
acceptDataFromOpenedPage:function(data){console.log(data)},},success:function(res){//通过eventChannel向被打开页面传送数据res.eventChannel.emit('acceptDataFromOpenerPage',
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025版智慧城市建设项目委托投标协议书范本3篇
- 2025版新企业股东协议书范本:企业创新发展计划3篇
- 2025版新车销售与二手车置换优惠套餐合同范本2篇
- 2025版学校食堂劳务承包与营养膳食研究开发协议3篇
- 2025年度个人房产买卖合同违约责任约定书
- 2025个人合伙企业股份清算转让协议3篇
- 2025版个人借款担保合同标准化模板4篇
- 2025年全球及中国水平运动输送机行业头部企业市场占有率及排名调研报告
- 2025-2030全球高牌号取向硅钢行业调研及趋势分析报告
- 2025-2030全球牵引型AGV行业调研及趋势分析报告
- 阿米巴落地实操方案
- 火龙罐综合灸疗法
- 药物制剂工(三级)理论试题题库及答案
- 高强度间歇训练(HIIT)对代谢健康的长期影响
- ICU患者导管留置登记表
- 红色中国风西安旅游PPT模板
- 中建商务工作指南手册
- 耳鼻咽喉:头颈外科疾病诊断流程与冶疗策略
- 贵州省2023年中考英语真题
- 个人借条电子版模板
- 中国思想史 马工程329P
评论
0/150
提交评论