活动按钮状态流转

This commit is contained in:
2026-03-25 15:53:37 +08:00
commit 37346e790f
2762 changed files with 240282 additions and 0 deletions

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,8 @@
{
"navigationBarTitleText": "购物车",
"enablePullDownRefresh": true,
"usingComponents": {
"mall-cart": "/pagesMall/component/mall/cart",
"quantity-modal": "/pagesMall/component/modal/quantity"
}
}

View File

@@ -0,0 +1 @@
<page-meta page-style="{{'overflow:'+(pageShow?'hidden':'visible')}}"></page-meta><view class="container" style="{{'--theme-color:'+(themeColor)+';'}}"><title-bar vue-id="8dfd9244-1" title="购物车" bind:__l="__l"></title-bar><block wx:if="{{loadEnd}}"><view class="container-main"><block wx:if="{{$root.g0}}"><view class="main-header flex justify-content-between align-items-center"><view class="header-title">商品列表</view><view data-event-opts="{{[['tap',[['handleDelete']]]]}}" class="header-btn" bindtap="__e">清除购物车</view></view></block><view class="main-list"><block wx:if="{{$root.g1}}"><mall-cart vue-id="8dfd9244-2" show-data="{{cartList}}" data-event-opts="{{[['^changeSelect',[['changeSelect']]],['^changeNumber',[['changeNumber']]]]}}" bind:changeSelect="__e" bind:changeNumber="__e" bind:__l="__l"></mall-cart></block><block wx:else><empty vue-id="8dfd9244-3" top="30%" title="暂无商品," btnText="去购物" data-event-opts="{{[['^callback',[['toShopping']]]]}}" bind:callback="__e" bind:__l="__l"></empty></block></view><block wx:if="{{$root.g2}}"><view class="main-footer flex align-items-center"><view data-event-opts="{{[['tap',[['toggleSelectAll']]]]}}" class="footer-radio flex align-items-center" bindtap="__e"><view class="{{['radio-input',(allSelected)?'active':'']}}"><block wx:if="{{allSelected}}"><image src="/static/tick.png" mode="aspectFit"></image></block></view><view class="radio-label">全选</view></view><view class="footer-amount flex-item flex align-items-center justify-content-end"><text class="label">合计</text><text class="amount text-ellipsis">{{"¥"+totalPrice}}</text></view><view data-event-opts="{{[['tap',[['toSettlement']]]]}}" class="{{['footer-btn',(!$root.g3)?'disabled':'']}}" bindtap="__e">去结算</view></view></block><view class="safe-padding" style="background:#FFF;"></view></view></block><quantity-modal class="vue-ref" bind:confirm="__e" bind:onChange="__e" vue-id="8dfd9244-4" data-ref="quantityModal" data-event-opts="{{[['^confirm',[['changeQuantity']]],['^onChange',[['pageChange']]]]}}" bind:__l="__l"></quantity-modal><tab-bar vue-id="8dfd9244-5" bind:__l="__l"></tab-bar></view>

View File

@@ -0,0 +1 @@
page{padding-bottom:0}.container{height:100vh;display:flex;flex-direction:column}.container .container-main{flex:1;display:flex;flex-direction:column}.container .container-main .main-header{padding:32rpx 32rpx 0}.container .container-main .main-header .header-title{color:#5a5b6e;font-size:32rpx;font-weight:600;line-height:44rpx}.container .container-main .main-header .header-btn{color:var(--theme-color);font-size:28rpx;line-height:40rpx}.container .container-main .main-list{flex:1;padding:32rpx}.container .container-main .main-footer{padding:32rpx;background:#fff}.container .container-main .main-footer .footer-radio .radio-input{width:32rpx;height:32rpx;border-radius:50%;background:#d6dbde}.container .container-main .main-footer .footer-radio .radio-input.active{background:var(--theme-color)}.container .container-main .main-footer .footer-radio .radio-label{margin-left:16rpx;color:#5a5b6e;font-size:28rpx;line-height:40rpx}.container .container-main .main-footer .footer-amount{margin-left:16rpx}.container .container-main .main-footer .footer-amount .label{color:#c4c4c4;font-size:28rpx;line-height:40rpx;white-space:nowrap}.container .container-main .main-footer .footer-amount .amount{margin-left:8rpx;color:var(--theme-color);font-size:28rpx;font-weight:600;line-height:40rpx}.container .container-main .main-footer .footer-btn{margin-left:20rpx;color:#fff;font-size:28rpx;line-height:40rpx;padding:16rpx 32rpx;min-width:200rpx;border-radius:36rpx;background:var(--theme-color);text-align:center}.container .container-main .main-footer .footer-btn.disabled{background:#aaa}