当前位置: 首页 > news >正文

自定义功能的网站网站负责人不是法人

自定义功能的网站,网站负责人不是法人,做网站的总结,苏州市建设工程交易网微信小程序基于Vant Weapp的购物车功能实现 1、单选 使用微信小程序原生表单组件checkbox和checkbox-group 注意&#xff1a;checkbox原生不支持bind:change事件&#xff0c;checkbox-group支持 <checkbox-group bindchange"handleCheck"><checkbox val…

微信小程序基于Vant Weapp的购物车功能实现

1、单选

使用微信小程序原生表单组件checkbox和checkbox-group

注意:checkbox原生不支持bind:change事件,checkbox-group支持

<checkbox-group bindchange="handleCheck"><checkbox value="1" checked="{{isCheck1}}"></checkbox><checkbox value="2" checked="{{isCheck2}}"></checkbox><checkbox value="3" checked="{{isCheck3}}"></checkbox>
</checkbox-group>

需要在checkbox-group上绑定bind:change事件,并在checkbox标签上赋值value属性

  handleCheck(event) {// 所有选中的商品的valuelet checkedIds = event.detail.value;  //['1']},

进行单选操作时,在change事件的参数中可以获取到所有在checkbox-group中被选中的元素的value值组成的数组

2、全选

在实现全选功能时,一般全选只有一个复选框,但是也需要套一个checkbox-group,利用原生的微信小程序封装好的bind:change事件,可以更加方便的实现功能

<checkbox-group bindchange="handleCheckAll"><checkbox checked="{{allCheck}}" value="{{true}}" />
</checkbox-group>

全选框需要帮定一个参数动态存储复选框的状态,并在change事件中修改这个状态,以及控制其他可选框的状态和全选框一致

handleCheckAll(event){this.setData({allCheck: !this.data.allCheck,isCheck1: !this.data.allCheck,isCheck2: !this.data.allCheck,isCheck3: !this.data.allCheck})
},

注意:这里看上去虽然没有用上checkbox-group的参数,但是解决了在复选框上绑定点击事件覆盖原生可选框的功能

3、全选和单选联动

在前面已经完成单选和全选的独立功能了,但是无法实现在选中所有单选的复选框时全选框也选中,

所有的单选框选没有选中时,全选框同时取消

实现思路:一般购物车的数据是根据数据渲染出来的,所以可以获取到所有商品的数量,与单选checkbx-group的回调函数中的参数进行对比,如果选中的数量小于总数,则设置全选框为false,如果选中的数量等于总数,则设置全选框为true。

实例代码:

handleCheck(event) {// 所有选中的商品的valuelet checkedIds = event.detail.value;// 全部商品的数量const length = this.data.shopList.lengthif(checkedIds.length < length){this.setData({allCheck: false})}else if(checkedIds.length == length){this.setData({allCheck: true})}
}

4、总价的计算

对于总价计算,需要在进行单选和全选时都要进行更新total,所以需要封装成一个函数,在进行操作的回调函数中调用,实现总价的实时更新

  render() {const priceShop = this.data.shopList.filter(ele => ele.isCheck === true)const total = priceShop.reduce((acc, cur) => {const value = cur.num * parseInt(cur.finVersion[1], 10); // 确保 parseInt 有一个基数,这里使用 10return acc + value;}, 0); // 初始化累加器为 0this.setData({allPrice: total})},

在render函数中先获取所有被选中的单选框,并使用reduce方法将每个数据中的数量和单价相乘并累加,然后使用setData方法更新total值,实现合计的更新

//单选的回调
handleCheckAll(event){...render()
},
//全选的回调
handleCheck(event) {...render()
}

最终效果:
Alt

http://www.laogonggong.com/news/71982.html

相关文章:

  • 广州app制作公司seo优化几个关键词
  • 特效音网站建一个网站带管理需要多少钱一年
  • 卡盟网站是怎么建设的朝阳做网站哪家公司好
  • 中国建设银行网站-个人客wordpress 插件位置
  • 网站制作费用多少钱电子商务网站前台业务系统主要是
  • 做服务网站要多少钱周口网站建设多少钱
  • 兼职做海报网站阿里云服务器 做网站
  • 网站开发保密协议范本免费wordpress cms主题
  • 万网怎么上传网站义乌网络营销
  • 郑州做网站公司yooker网络服务器怎么设置
  • 九一制作网站网站域名查企业邮箱
  • 免费站推广网站在线电脑培训机构哪个好
  • 企业网站的优化方案网页制作与设计中什么是div
  • 哪些企业喜欢做网站广告公众号开发者权限怎么开
  • 怎么样推广一个网站wordpress产品布局
  • 网站内的链接怎么做无锡大型网站建设公司
  • 做网站样本电销好做吗网站建设方面论文
  • 网站关键词重要吗推广网站有那些
  • 做网站谈单搭建网站要用到的工具
  • visual c 网站开发以用户为中心 建设学校网站
  • 承接网站开发文案网站建设合同免费下载
  • 如何搭建一个网站开发环境横沥仿做网站
  • 高校档案馆网站建设深圳口碑好的vi设计公司
  • 网站建设与管理试题与答案上海国际人力资源开发公司
  • 设计报价网站兰溪网站建设公司
  • 南京市住宅建设总公司网站react是网站开发
  • 律师网站素材高端品牌包包都有哪些
  • 一个网站需要哪些东西网站正在维护中啥意思
  • 请人做网站收费多少钱关键词整站优化公司
  • 国际空间站学网站开发看什么书