uni-app 优购商城 - 购物车功能

目录

一、购物车

      (1)ycq-address  - 收货地址

      (2)ycq-goods - 购物车显示商品信息

      (3)ycq-settle - 购物车结算页面

      (4)cart - 购物车页面

1、购物车页面

  在 pages/cart 写购物车的页面

<template>
    <view v-if="cart.length!==0">
        <!-- 地址框 -->
        <qxc-address :address="address"></qxc-address>
        <!-- 购物车标题 -->
        <view class="cart-title">
            <text class="iconfont icon-tuya_huabanfuben">购物车</text>
            <uni-icons class="item-img" type="cart"></uni-icons>
        </view>
        <!-- 购物车列表 -->
        <view>
            <qxc-goods v-for="(item,index) in cart" :key="index" :goods='item' :showCheck='true' :showNum="true"
                :allowLongTap="true" @changeNum='changeNum' @changChacked="changChacked">
            </qxc-goods>
        </view>
        <!-- 购物车统计 -->
        <qxc-settle :buttonText="'结算'" :showAllCheck="true" :cartData='cart' @changAllCheck='changAllCheck'>
        </qxc-settle>
        </view>
        <!-- 购物车为空时 -->
        <view class="cart-default" v-else>
            <view class="default-image">
                <image class="cart-image" src="../../static/cart_empty.png" mode="widthFix"></image>
            </view>
            <view class="default-text">
                购物车空空如也
            </view>
        </view>
 
 
</template>

<script>
    export default {
        data() {
            return {
                cart: [],
                address:{},
            }
        },
        //不能使用onload,否则从商品详情页加入购物车,再点击'购物车'后,购物车没有及时更新数据
        onShow() {
            //从缓存获取购物车数据
            this.cart = uni.getStorageSync('cart') || [];
            //从缓存获取地址数据
            this.address = uni.getStorageSync('address') || {};
            
        },
 
        methods: {
            changAllCheck(e) {
                this.cart.forEach(v => v.checked = e);
            },
 
            //修改购物车相应产品的选中状态
            changChacked(e) {
                let index = this.cart.findIndex(v => v.goods_id == e.goods_id);
                this.cart[index].checked = e.checked;
                //更改缓存中的购物车
                uni.setStorageSync('cart', this.cart);
            },
 
            //修改购物车相应产品的数量
            //5.31做了更改加了if 移了let index和最后储存的变量放入else
            changeNum(e) {
                let index = this.cart.findIndex(v => v.goods_id == e.goods_id);
                if (e.cartNum == 0) {
                    this.cart.splice(index, 1)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
uni-app是一种基于Vue.js的跨平台开发框架,可以用于开发微信小程序、H5、App等多个平台的应用。《优购商城项目》是一个基于uni-app开发的微信小程序商城项目。 要实现《优购商城项目》,首先需要配置uni-app的开发环境。可以使用HBuilderX作为开发工具,它提供了丰富的功能和插件来辅助开发。然后需要获取微信小程序的APPID,这是小程序的身份证明,是唯一的。可以在微信开放平台上注册一个小程序并获取到APPID。 接下来,可以在HBuilderX中创建一个新的uni-app项目。在菜单栏中选择文件 -> 项目 -> 新建选择uni-app,填写项目名称并指定项目创建的目录。然后选择微信小程序作为目标平台,并填写小程序的APPID。这样就可以开始在uni-app上开发《优购商城项目》了。 在开发过程中,可以使用uni-app提供的丰富组件和API来实现商城功能,比如商品展示、购物车、订单管理等。可以使用uni-app提供的跨平台能力,一次开发即可在多个平台上运行。在开发完成后,可以将项目打包成微信小程序并在微信开发者工具中进行调试和发布。 通过以上步骤,就可以利用uni-app开发微信小程序实现《优购商城项目》了。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [微信小程序--优购商城项目(1)](https://blog.csdn.net/ljn1046016768/article/details/124043924)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [uniapp微信小程序实现《优购商城项目》](https://blog.csdn.net/qq_64102392/article/details/131212823)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值