微信小程序实战项目

2023-11-10

基于微信小程序的在线商城点单系统

前言:闲来无事,想以后自己开一个小超市或者小吃店,能够支持线上下单,既方便客户也方便自己。系统采用C#语言作为后端实现与小程序的交互,给用来学习或者想自己开个小店的朋友当个参考。
文末获取源码联系
精彩专栏持续更新推荐订阅,收藏关注不迷路

微信小程序实战开发专栏

一、项目介绍

小程序主要有首页、商品详情、购物车、个人中心等模块。
管理端主要有人员管理、商品管理、订单管理等模块。

   
   
   
   
  • 1
  • 2

二、相关技术

html+css+js:微信小程序界面。
NetCore框架+C#程序语言:小程序及后台管理系统API的实现。
Layui前端框架:web后台管理界面样式及数据渲染框架。
SqlServer数据库:数据支持。

   
   
   
   
  • 1
  • 2
  • 3
  • 4

三、小程序效果图

四、后台管理效果图

五、代码块

<!-- 自定义顶部 start -->
<view class="yx-custom" style="padding-top:{{statusBarHeight}}px;background-image: linear-gradient(43deg, #12C206,#00C90F);">
  <view class="headerBox">
    <view class="leftAddress">
      <image class="leftAddressIcon" src="{{imgUrl}}/upload/20220608/addressIcon.png" lazy-load="true"></image>
      <view class="leftAddressText little">橘猫餐厅</view>
      <image class="rightJtIcon" src="{{imgUrl}}/upload/20220608/jtBottom.png" lazy-load="true"></image>
    </view>
    <view class="appletsTitle"></view>
  </view>
</view>
<!-- 自定义顶部 占位标签 -->
<view class="yx-empty_custom" style="padding-top:{{statusBarHeight}}px;"></view>
<!-- banner图 -->
<view style="background: url({{imgUrl}}/upload/20220608/topBackImg.png);background-size: 100% 100%;width:750rpx;height:324rpx;">
  <view class="bannerBottom"></view>
</view>
<!-- 分类及商品 -->
<view class="containerBox" style="height:{{nowEquipmentHeight-((statusBarHeight*2)+162)}}px;">
  <scroll-view class="menu-left" scroll-y="true" style="height:{{nowEquipmentHeight-((statusBarHeight*2)+162)}}px;">
    <view wx:for="{{menuList}}" class="little {{menuIndex==index?'menu-item-check':'menu-item'}}  {{item.prevClass}} {{item.nextClass}}" 
    bindtap="clickMenu" data-index="{{index}}">{{item.title}}</view>
    <view class="bottomHeightBox"></view>
  </scroll-view>
  <scroll-view class="menu-right" scroll-y="true" style="height:{{nowEquipmentHeight-((statusBarHeight*2)+162)}}px;">
    <view class="menuTitleBox">
      <text>热门推荐</text>
    </view>
    <view class="productContainer">
      <view class="productItem" wx:for="{{20}}" bindtap="goDetail">
        <view class="productImage" style="background: url({{imgUrl}}/upload/20220608/ky.jpg);background-size: 100% 100%;"></view>
        <view class="productName little">超级无敌好吃美味烤鸭</view>
        <view class="productPriceBox">
          <view class="salePrice">
            <text style="font-size:22rpx;"></text>
            <text>58.88</text>
            <text style="font-weight:400;">/g</text>
          </view>
          <view class="oldPrice middleLine">¥98</view>
        </view>
      </view>
    </view>
    <view class="bottomHeightBox"></view>
  </scroll-view>
</view>
<!-- <image class="scanIcon" src="{{imgUrl}}/Areas/dfapi/Content/images/cp.png" lazy-load="true"></image> -->
<image class="scanIcon" src="{{imgUrl}}{{scanUrl}}" lazy-load="true" bindtap="scanTableCode"></image>

   
   
   
   
   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
<!--pages/productDetail/index.wxml-->
<!-- 商品轮播图 -->
<view class="product-banner">
  <swiper class="product-banner" bindchange='onSlideChange' indicator-dots="{{indicatorDots}}" autoplay="{{autoplay}}"
    interval="{{interval}}" duration="{{duration}}" circular="{{circular}}">
    <block wx:for="{{productBanner}}" wx:key="id">
      <swiper-item>
        <view>
          <image src="{{item}}" class="product-banner" alt="" lazy-load="true" />
        </view>
      </swiper-item>
    </block>
  </swiper>
</view>
<!-- 秒杀商品展示 -->
<view wx:if="{{productActiviType==0}}" class="activeBox"
  style="background: url({{imgUrl}}/upload/20220608/kill-pro-back.png);background-size: 100% 100%;">
  <view class="kill-leftBox">
    <view class="product-priceBox">
      <view style="height:35rpx;line-height: 35rpx;">
        <text class="symbol-kill"></text>
        <text class="price-kill">58.8</text>
        <text class="throuth-kill">¥98</text>
      </view>
      <view class="num-kill displayBox">限量200份</view>
    </view>
    <view class="justNum-kill">
      <text>已售198份</text><text
        class="just-rightText">每人限购1份</text>
    </view>
  </view>
  <view class="kill-rightBox">
    <view class="just-text">距秒杀结束仅剩</view>
    <view class="kill-timeBox">
      <view class="clockBox margin-one displayBox">{{hour}}</view>
      <view class="littleClock">:</view>
      <view class="clockBox displayBox">{{min}}</view>
      <view class="littleClock">:</view>
      <view class="clockBox displayBox">{{second}}</view>
    </view>
  </view>
</view>
<!-- 商品名称 -->
<view class="productName-box littleTwo">
  超级无敌好吃美味烤鸭
</view>
<!-- 商品描述 -->
<view class="productDesc-box littleTwo">
  色泽红艳,肉质细嫩,味道醇厚,肥而不腻
</view>
<!-- 分享奖励 -->
<view class="productShare-money" bindtap="shareProduct">
  <view class="left-Share">
    <text>该商品分享可得奖励¥10</text>
  </view>
  <view class="right-Share">
    <image src="{{imgUrl}}/upload/20220608/share.png" lazy-load="true"></image>
    <text>立即分享</text>
  </view>
</view>
<!-- 商品配置规格 -->
<!-- <view class="productInfoBox">
  <view class="heightInfo"></view>
  <view class="Distribution" bindtap="chouseAddress">
    <view class="title-info">配送</view>
    <view class="chouseSpe">请选择收货地址</view>
    <image src="{{imgUrl}}/upload/20220608/rightJt.png" lazy-load="true"></image>
  </view>
</view> -->

<!-- 服务 -->
<view class=services-box>
<view class=services-left>服务</view>
<view class=services-right>新鲜品质 配送到家 售后无忧</view>
</view>

<!-- 商品评价 -->
<view class=product-reply >
<view class=reply-title>
<view class=leftReolyCount>
评价(2824)
</view>
<view class=middleSeeMore>
<view>查看全部评价</view>
</view>
<image class=grayRight src={ {imgUrl}}/upload/20220608/rightJt.png lazy-load=true></image>
</view>
<view class=replyUserInfo>

<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>image</span>  <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>replyUserHead<span class="token punctuation">"</span></span> <span class="token attr-name">src</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>{<!-- -->{imgUrl}}/upload/20220608/jocker.jpg<span class="token punctuation">"</span></span> <span class="token attr-name">lazy-load</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>true<span class="token punctuation">"</span></span><span class="token punctuation">&gt;</span></span><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>image</span><span class="token punctuation">&gt;</span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>view</span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>rightUserName<span class="token punctuation">"</span></span><span class="token punctuation">&gt;</span></span>
  <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>view</span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>userName little<span class="token punctuation">"</span></span><span class="token punctuation">&gt;</span></span>橘猫大侠<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>view</span><span class="token punctuation">&gt;</span></span>
  <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>view</span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>starBox<span class="token punctuation">"</span></span><span class="token punctuation">&gt;</span></span>
    <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>image</span> <span class="token attr-name">src</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>{<!-- -->{imgUrl}}/upload/20220608/star5.png<span class="token punctuation">"</span></span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>starImg<span class="token punctuation">"</span></span><span class="token punctuation">&gt;</span></span>
    <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>image</span><span class="token punctuation">&gt;</span></span>
  <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>view</span><span class="token punctuation">&gt;</span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>view</span><span class="token punctuation">&gt;</span></span>

</view>
<view class=replyContet littleTwo>
味道好,配送快,值得信赖!
</view>
</view>

<!-- 商品详情 -->
<image class=proImgDetail src={ {imgUrl}}/upload/20220608/prodetailImg.png lazy-load=true></image>

<view style=height:56rpx;></view>

<view class=productDetailTable wx:if={ {spuList.length>0}}>

<view wx:if={ {!isShowDetail}}>
<view class=productTableTr>
<view class=leftTr>
<view class=little leftTrText>{ {spuList[0].name}}</view>
</view>
<view class=rightTr little>{ {spuList[0].content}}</view>
</view>
</view>

<view wx:if={ {isShowDetail}} class=productTableTr wx:for={ {spuList}}>
<view class=leftTr>
<view class=little leftTrText>{ {item.name}}</view>
</view>
<view class=rightTr little>{ {item.content}}</view>
</view>

</view>

<view class=DetailArrow displayBox wx:if={ {spuList.length>0}}>
<image wx:if={ {!isShowDetail}} bindtap=clickArrow class=arrowImg
src={ {imgUrl}}/upload/20220608/nextJt.png lazy-load=true>
</image>
<text wx:if={ {!isShowDetail}} bindtap=clickArrow style=margin-left:10rpx;>展开</text>

<image wx:if={ {isShowDetail}} bindtap=clickArrow class=arrowImg
src={ {imgUrl}}/upload/20220608/topJt.png lazy-load=true>
</image>
<text wx:if={ {isShowDetail}} bindtap=clickArrow style=margin-left:10rpx;>收起</text>
</view>
<view style=height:56rpx;></view>
<image src={ {imgUrl}}/upload/20220608/explain.png class=explain></image>
<!-- 你可能还喜欢 -->
<view class=maybeLike>
<image src={ {imgUrl}}/upload/20220608/2323-2.png class=maybeLikePng></image>

<!-- 配置商品 -->
<view class=indexProductList>
<view class=productItemBottom wx:for={ {4}}>
<view style=background: url({ {imgUrl}}/upload/20220608/ky.jpg);background-size: 100% 100%; class=productImgBottom></view>
<view class=bottom-productName little>北京烤鸭</view>
<view class=iconBox little>
干净又卫生
</view>
<view class=buyBox-bottom>
<view class=leftPrice-bottom>
<text class=priceFh></text>
<text class=bottom-price>58</text>
<text class=bottom-oldPrice>¥98</text>
</view>
<view class=rightAdd-bottom data-index={ {index}} >
<image class=rightAdd-bottom src={ {imgUrl}}/upload/20220608/addcart.png lazy-load=true>
</image>
</view>
</view>
</view>
</view>
</view>
<view style=height:162rpx;></view>
<view class=footer>
<view class=leftFooter>
<view bindtap=GoHome>
<view style=background: url({ {imgUrl}}/upload/20220608/6-1.png);background-size: 100% 100%;
class=footImg>
</view>
<view class=footText>首页</view>
</view>
<view bindtap=GoShopping>
<view style=background: url({ {imgUrl}}/upload/20220608/6-5.png);background-size: 100% 100%;
class=footImg2>
</view>
<view class=footText2>购物车</view>
</view>
</view>
<view class=rightFooter>
<view class=displayShow >
<view class=addCart-btn displayBox catchtap=btnAddCart_footer>加入购物车</view>
<view class=purchase-btn displayBox bindtap=rightNowBuy>立即购买</view>
</view>
</view>
</view>

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136
  • 137
  • 138
  • 139
  • 140
  • 141
  • 142
  • 143
  • 144
  • 145
  • 146
  • 147
  • 148
  • 149
  • 150
  • 151
  • 152
  • 153
  • 154
  • 155
  • 156
  • 157
  • 158
  • 159
  • 160
  • 161
  • 162
  • 163
  • 164
  • 165
  • 166
  • 167
  • 168
  • 169
  • 170
  • 171
  • 172
  • 173
  • 174
  • 175
  • 176
  • 177
  • 178
  • 179
  • 180
  • 181
  • 182
  • 183
  • 184
  • 185
  • 186
  • 187
<!--pages/shoppingCart/index.wxml-->
<!--pages/login/index.wxml-->
<view class="yx-custom" style="padding-top:{{statusBarHeight}}px;background-image: linear-gradient(43deg, #12C206,#00C90F);">
  <view class="headerBox">
    <view class="leftAddress">
    </view>
    <view class="appletsTitle">购物车</view>
  </view>
</view>
<!-- 自定义顶部 占位标签 -->
<view class="yx-empty_custom" style="padding-top:{{statusBarHeight}}px;"></view>
<!-- 可下单的购物车商品 -->
<view class="go-product">
  <view class="product-num">
    <view class="left-productNum">共有5件商品</view>
    <view class="right-delProduct" bindtap="deleteProduct">
      <text>删除</text>
    </view>
  </view>
  <view wx:for="{{2}}" wx:for-index="idx" wx:for-item="item">
    <view class="discount">
      <view class="left-discount little">热门推荐</view>
      <view class="discount-jt">
        <image src="{{imgUrl}}/upload/20220608/cartJt.png" lazy-load="true"></image>
      </view>
    </view>
    <view wx:for="2" wx:for-index="indexProduct" wx:for-item="ProItem">
      <view class="list">
        <view class="product-item  height{{indexProduct}}">
          <movable-area>
            <movable-view out-of-bounds="true" direction="horizontal" x="{{item.xmove}}" inertia="true" data-productIndex="{{indexProduct}}" bindtouchstart="handleTouchStart" bindtouchend="handleTouchEnd" bindchange="handleMovableChange">
              <view class="productItem_new ">
                <view class="checkedIconBox">
                  <view class="cart-con-item-icon">
                    <icon wx:if="{{ProItem.selected}}" type="success" color="#FFBD20" bindtap="selectList_yx" data-other="{{idx}}" data-index="{{indexProduct}}" data-cartid="{{ProItem.cartId}}" />
                    <icon wx:else type="circle" bindtap="selectList_yx" data-other="{{idx}}" data-index="{{indexProduct}}" data-cartid="{{ProItem.cartId}}" />
                  </view>
                </view>
                <view class="rightProductInfo">
                  <image src="{{imgUrl}}/upload/20220608/ky.jpg" class="cart-productImg"></image>
                  <view class="productInfoBox">
                    <view class="cart-productName littleTwo">超级无敌好吃美味烤鸭</view>
                    <view class="cart-productSku little">500g</view>
                    <view class="cart-productPrice">
                      <text class="priceSymbol"></text>
                      <text class="cart-price">58.8</text>
                      <text class="cart-oldPrice">¥98</text>
                    </view>
                  </view>
                  <view class="cart-rightNumBox">
                    <view class="cart-con-item-num">
                      <text class="cart-con-item-num-left" catchtap="bindMinus" data-other="{{idx}}" data-index="{{indexProduct}}" data-cartid="{{ProItem.cartId}}">-</text>
                      <input type="cart-con-item-num-mid" bindinput="bindIptCartNum" data-index='{{indexProduct}}' value="1" disabled="{{true}}" />
                      <text class="cart-con-item-num-right" data-other="{{idx}}" data-index="{{indexProduct}}" data-cartid="{{ProItem.cartId}}" catchtap="bindPlus">+</text>
                    </view>
                  </view>
                </view>
              </view>
            </movable-view>
          </movable-area>
          <view class="delete-btn" data-id="{{item.id}}" bindtap="handleDeleteProduct" data-other="{{idx}}" data-index="{{indexProduct}}" data-cartid="{{ProItem.cartId}}">删除</view>
        </view>
      </view>
    </view>
  </view>
</view>
<view class="cant-product">
  <view class="cantTitle displayBox">因配送范围,库存原因等导致失效的商品</view>
  <view class="productItem_new height{{index}}" wx:for="{{2}}">
    <view class="cantProductLeft displayBox">
      失效
    </view>
    <view class="rightProductInfo">
      <view class="cart-productImg" style="background: url({{imgUrl}}/upload/20220608/ky.jpg);background-size: 100% 100%;">
        <image src="{{imgUrl}}/upload/20220608/yyyy.png" class="cart-productImg" lazy-load="true"></image>
      </view>
      <view class="productInfoBox">
        <view class="cart-productNameYY littleTwo">曾经好吃的烤鸭</view>
        <view class="cart-productYyy little">抱歉,该商品已售罄或下架</view>
        <view class="cart-productPrice">
          <text class="priceSymbolYY"></text>
          <text class="cart-priceYY">0</text>
        </view>
      </view>
      <view class="cart-rightNumBox">
      </view>
    </view>
  </view>
  <view class="clearBox">
    <view class="clear displayBox" bindtap="clearProduct">清空失效宝贝</view>
    <view class="switchAddress displayBox" bindtap="switchAdd">切换地址</view>
  </view>
</view>
<view class="maybeLike" wx:if="{{recommendProduct.length>0}}">
  <image src="{{imgUrl}}/upload/20220608/2323-2.png" class="maybeLikePng"></image>

<view class=indexProductList>
<view class=productItemBottom wx:for={ {recommendProduct}}>
<view style=background: url({ {item.productPic}});background-size: 100% 100%; class=productImgBottom></view>
<view class=bottom-productName little>{ {item.productName}}</view>
<view class=iconBox little>
{ {item.remark}}
</view>
<view class=buyBox-bottom>
<view class=leftPrice-bottom>
<text class=priceFh></text>
<text class=bottom-price>{ {item.price}}</text>
<text class=bottom-oldPrice>¥{ {item.proSalePrice}}</text>
</view>
<view class=rightAdd-bottom catchtap=btnAddCart data-index={ {index}} data-goodsid={ {item.productId}}>
<image class=rightAdd-bottom src={ {imgUrl}}/Areas/dfapi/Content/images/addcart.png lazy-load=true>
</image>
</view>
</view>
</view>
</view>
</view>
<view class=seeDetailPriceBox wx:if={ {isShowDetailPrice}} catchtap=btnHideDetail>
<view class=shareb2>
<view class=shareb2-con>
<viwe class=detailTitle displayBox>优惠明细</viwe>
<view class=orderAllPrice>
<view class=leftTitle>
<text>商品总额</text>
</view>
<view class=rightTitle>
<text>¥{ {totalPrice}}</text>
</view>
</view>
<view class=orderAllPrice>
<view class=leftTitle>
<text>运费</text>
</view>
<view class=rightTitle>
<text>+¥{ {freight}}</text>
</view>
</view>
<view class=orderAllPrice>
<view class=leftTitle>
<text>优惠券</text>
</view>
<view class=rightTitle>
<text style=color:#FF4C0E;>-¥{ {couponAmount}}</text>
</view>
</view>
<view class=orderAllPrice>
<view class=leftTitle>
<text>折扣</text>
</view>
<view class=rightTitle>
<text style=color:#FF4C0E;>-¥{ {discountMoney}}</text>
</view>
</view>
<view class=orderAllPriceFinal>
<view class=leftTitle>
<text>合计</text>
</view>
<view class=rightTitle>
<text>¥{ {amountPayable}}</text>
</view>
</view>
</view>
</view>
</view>

<view class=cart-foter>
<view class=allChecked>
<image wx:if={ {!isCheckAll}} src={ {imgUrl}}/upload/20220608/uncheck.png bindtap=selectAll lazy-load=true class=checkImg></image>
<image wx:else src={ {imgUrl}}/upload/20220608/checked.png lazy-load=true bindtap=selectAll class=checkImg></image>
<view class=allCheckText>全选</view>
</view>

<view class=middlePrice>

<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>view</span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>priceBox<span class="token punctuation">"</span></span><span class="token punctuation">&gt;</span></span>
  <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>text</span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>hjTitle<span class="token punctuation">"</span></span><span class="token punctuation">&gt;</span></span>合计:<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>text</span><span class="token punctuation">&gt;</span></span>
  <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>text</span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>symbol<span class="token punctuation">"</span></span><span class="token punctuation">&gt;</span></span>¥<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>text</span><span class="token punctuation">&gt;</span></span>
  <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>text</span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>priceAll<span class="token punctuation">"</span></span><span class="token punctuation">&gt;</span></span>¥198<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>text</span><span class="token punctuation">&gt;</span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>view</span><span class="token punctuation">&gt;</span></span>

<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>view</span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>coupon<span class="token punctuation">"</span></span><span class="token punctuation">&gt;</span></span>
  <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>text</span><span class="token punctuation">&gt;</span></span>优惠:<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>text</span><span class="token punctuation">&gt;</span></span>
  <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>text</span><span class="token punctuation">&gt;</span></span>¥<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>text</span><span class="token punctuation">&gt;</span></span>
  <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>text</span><span class="token punctuation">&gt;</span></span>{<!-- -->{finalCou}}<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>text</span><span class="token punctuation">&gt;</span></span>
  <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>text</span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>seeDetail<span class="token punctuation">"</span></span><span class="token punctuation">&gt;</span></span>查看明细<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>text</span><span class="token punctuation">&gt;</span></span>

  <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>image</span> <span class="token attr-name"><span class="token namespace">wx:</span>if</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>{<!-- -->{isShowDetailPrice}}<span class="token punctuation">"</span></span> <span class="token attr-name">src</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>{<!-- -->{imgUrl}}/upload/20220608/orangeOn.png<span class="token punctuation">"</span></span> <span class="token attr-name">lazy-load</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>true<span class="token punctuation">"</span></span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>orangeJt<span class="token punctuation">"</span></span> <span class="token attr-name">bindtap</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>seeDetailPrice<span class="token punctuation">"</span></span><span class="token punctuation">&gt;</span></span><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>image</span><span class="token punctuation">&gt;</span></span>

  <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>image</span> <span class="token attr-name"><span class="token namespace">wx:</span>else</span> <span class="token attr-name">src</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>{<!-- -->{imgUrl}}/upload/20220608/orangeBo.png<span class="token punctuation">"</span></span> <span class="token attr-name">lazy-load</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>true<span class="token punctuation">"</span></span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>orangeJt<span class="token punctuation">"</span></span> <span class="token attr-name">bindtap</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>seeDetailPrice<span class="token punctuation">"</span></span><span class="token punctuation">&gt;</span></span><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>image</span><span class="token punctuation">&gt;</span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>view</span><span class="token punctuation">&gt;</span></span>

</view>

<view class=right-btnJs>
<view class=addOrder displayBox bindtap=goBuy>结算</view>
</view>

</view>

<view class=bottomHeightBox></view>

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136
  • 137
  • 138
  • 139
  • 140
  • 141
  • 142
  • 143
  • 144
  • 145
  • 146
  • 147
  • 148
  • 149
  • 150
  • 151
  • 152
  • 153
  • 154
  • 155
  • 156
  • 157
  • 158
  • 159
  • 160
  • 161
  • 162
  • 163
  • 164
  • 165
  • 166
  • 167
  • 168
  • 169
  • 170
  • 171
  • 172
  • 173
  • 174
  • 175
  • 176
  • 177
  • 178
  • 179
  • 180
  • 181
  • 182
  • 183
  • 184
  • 185
  • 186
  • 187
  • 188
  • 189
  • 190
  • 191
  • 192
  • 193
  • 194
  • 195
  • 196
  • 197
  • 198
  • 199
  • 200
  • 201
<!--pages/myCenter/index.wxml-->
<!-- 头部背景 收益容器 -->
<view class="center-Top">
  <view class="center-TopBack">
    <view class="userInfo-box">
      <view class="leftInfo">
        <view class="cnter-user">
          <image  src="{{imgUrl}}/upload/20220608/noUser.png" class="cnter-user" lazy-load="true">
          </image>
        </view>
        <view class="userNameBox">
          <view class="uNameText">
            <!-- <open-data  type="userNickName"></open-data> -->
            <!-- <view wx:else bindtap="login">注册/登录</view> -->
            <view >
              <text>摔跤猫子</text>
              <!-- <button class="kefu-btn" type="primary" open-type="getUserInfo" bindgetuserinfo="getUserInfo"
                style="width:100%"></button> -->
                <button  class="kefu-btn" style="width:100%"></button>
            </view>
          </view>
          <view class="shop">
            <text>用户</text>
          </view>
        </view>
      </view>
    </view>
<!-- 我的订单入口 -->
<view class="myOrder-menu">
  <view class="order-title">
    <view class="leftTitle">我的订单</view>
    <view class="rightSeeMore" bindtap="goToOrder" data-id="0">
      <image src="{{imgUrl}}/upload/20220608/black-jt.png" lazy-load="true"></image>
      <text style="float:right;padding-right:10rpx;">查看更多</text>
    </view>
  </view>
  <view class="orderMenu-img">
    <view class="ordermenu-detail" bindtap="goToOrder" data-id="1">
      <image src="{{imgUrl}}/upload/20220608/dfk.png" lazy-load="true"></image>
      <view class="num-mark" wx:if="{{toBePaid>0}}">{{toBePaid}}</view>
      <view class="order-text-staus">待付款</view>
    </view>
    <view class="ordermenu-detail" bindtap="goToOrder" data-id="2">
      <image src="{{imgUrl}}/upload/20220608/dfh.png" lazy-load="true"></image>
      <view class="num-mark" wx:if="{{toBeDelivered>0}}">{{toBeDelivered}}</view>
      <view class="order-text-staus">待发货</view>
    </view>
    <view class="ordermenu-detail" bindtap="goToOrder" data-id="3">
      <image src="{{imgUrl}}/upload/20220608/dsh.png" lazy-load="true"></image>
      <view class="num-mark" wx:if="{{toBeReceived>0}}">{{toBeReceived}}</view>
      <view class="order-text-staus">待收货</view>
    </view>
    <view class="ordermenu-detail" bindtap="goReplyList">
      <image src="{{imgUrl}}/upload/20220608/dpj.png" lazy-load="true"></image>
      <view class="num-mark" wx:if="{{toBeReply>0}}">{{toBeReply}}</view>
      <view class="order-text-staus">评价</view>
    </view>
    <view class="ordermenu-detail" bindtap="afterSale">
      <image src="{{imgUrl}}/upload/20220608/dtk.png" lazy-load="true"></image>
      <view class="num-mark" wx:if="{{cancel>0}}">{{cancel}}</view>
      <view class="order-text-staus">售后/退款</view>
    </view>
  </view>
</view>
  </view>
</view>
<!-- 常用工具入口 -->
<view class="tool-box">
  <view class="often-tool-title">常用工具</view>
  <view class="tool-menu-one" >
    <view class="tool-menu-detail" bindtap="GotomyEarnings">
      <view style="background: url({{imgUrl}}/upload/20220608/profit.png);background-size: 100% 100%;"
        class="toolImgBack"></view>
      <view class="tool-title">我的收益</view>
    </view>
    <view class="tool-menu-detail" bindtap="GotoMyTeam">
      <view style="background: url({{imgUrl}}/upload/20220608/myteam.png);background-size: 100% 100%;"
        class="toolImgBack"></view>
      <view class="tool-title">我的团队</view>
    </view>
    <view class="tool-menu-detail" bindtap="goCouponList">
      <view style="background: url({{imgUrl}}/upload/20220608/myCou.png);background-size: 100% 100%;"
        class="toolImgBack"></view>
      <view class="tool-title">我的优惠券</view>
    </view>
    <view class="tool-menu-detail" bindtap="goAddressList">
      <view style="background: url({{imgUrl}}/upload/20220608/myAdd.png);background-size: 100% 100%;"
        class="toolImgBack"></view>
      <view class="tool-title">收货地址</view>
    </view>
  </view>
  <view class="tool-menu-two">
    <view class="tool-menu-detail" style="position: relative;">
      <view style="background: url({{imgUrl}}/upload/20220608/customService.png);background-size: 100% 100%;"
        class="toolImgBack"></view>
      <view class="tool-title">联系客服</view>
      <button class="kefu-btn" open-type="contact" style="width:100%"></button>
    </view>
    <view class="tool-menu-detail" bindtap="setUp">
      <view style="background: url({{imgUrl}}/upload/20220608/set.png);background-size: 100% 100%;"
        class="toolImgBack"></view>
      <view class="tool-title">设置</view>
    </view>
  </view>
</view>

 
 
 
 
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

微信小程序实战项目 的相关文章

  • GCC同时使用静态库和动态库链接

    一原文连接 http blog csdn net wangzhen209 article details 47153239 GCC同时使用静态库和动态库链接 在应用程序需要连接外部库的情况下 linux默认对库的连接是使用动态库 在找不到动
  • What is tethering and how do you enable tethering?

    https 3g co uk guides tethering everything you need to know What is tethering and how do you enable tethering 30 Sep 201
  • 线性回归方程

    线性回归方程在嵌入式开发中是非常常用的 尤其在参数校准这块应用非常普遍 无论你是写在上位机代码中 还是直接写在嵌入式软件中 下面是我在PT100校准中写的关于线性回归方程代码 线性回归方程公式 平均值XA X1 X2 XN N 平均值YA
  • c语言用自动机识别字符串,C语言 字符串匹配算法

    字符串匹配算法 一 简介 收藏 注 本文大致翻译自EXACT STRING MATCHING ALGORITHMS 去掉一些废话 增加一些解释 文本信息可以说是迄今为止最主要的一种信息交换手段 而作为文本处理中的一个重要领域 字符串匹配 就
  • malloc函数两个使用实例

    第一个例子用malloc函数实现一维数组的模拟 include
  • CentOS 7中添加一个新用户并授权

    创建新用户 创建一个用户名为 linuxidc root localhost adduser linuxidc 为这个用户初始化密码 linux会判断密码复杂度 不过可以强行忽略 root localhost passwd linuxidc
  • 【机器学习】聚类【Ⅴ】密度聚类与层次聚类

    主要来自周志华 机器学习 一书 数学推导主要来自简书博主 形式运算 的原创博客 包含自己的理解 有任何的书写错误 排版错误 概念错误等 希望大家包含指正 由于字数限制 分成五篇博客 机器学习 聚类 基础知识与距离度量 机器学习 聚类 原型聚
  • JavaScript中,for in 和for of的区别

    for in 遍历的是数组的索引 即键名 而 for of 遍历的是数组元素值 即键值 for in 循环出的是 key for of 循环出的是 value 推荐在循环对象属性的时候使用 for in 在遍历数组的时候的时候使用 for

随机推荐

  • EDAS 系统check上传稿件时提示PDF中存在未内嵌的字体

    问题描述 在上传稿件时 系统提示 upload failed One or more fonts are not embedded See EDAS FAQ 并给出了字体未内嵌图片所在位置 提供的解决方案需要从配置环境开始 重新绘制图片 比
  • Theano下用CNN(卷积神经网络)做车牌中文字符OCR

    之前时间一直在看 Michael Nielsen 先生的 Deep Learning 教程 用了他的代码在theano下测试了下中文车牌字符的识别 由于我没有GPU 简单的在进行了16个epoch之后 识别率达到了 98 41 由于图像本来
  • 简单易懂,终于搞明白怎么用nginx在vue开发环境中跨域了,详细

    先说一下vue自己的proxy跨域 毕竟作为前端这个很简单 也更方便 vue cli3 x中 vue cli2 0版本在config文件夹index js中设置 proxyTable 设置方法一样 在新建的vue cofig js里 dev
  • 算法设计与分析——分治法

    归并排序 算法流程 归并排序 分解数组 递归求解 合并排序 步骤 1 首先将待排序的数组不断两两分解直至每一组只有一个元素 2 构建有序数组 两两合并 伪代码 递归式求解 递归树法 代入法 主定理法 最大子数组问题 快速排序 步骤 划分 选
  • vue项目中swipe自定义pagination,navigationButton,鼠标滑过暂停播放

    最近在vue项目中使用了swipe 为了修改样式踩了不少坑记录一下 先上最终成果图 项目要求自定义分页器 前后按钮 以及鼠标滑过时暂停轮播 下载安装 npm install swiper 5 x vue awesome swiper 注意一
  • p值校正,FDR(BH法)的实现过程

    原理 我们要看下最常用的BH法的论文 做m次无效假设作物的数量 那么 被错误地拒绝了的无效假设的比例Q V V S V R 所谓的FDR值就是Q的期望值 E Q E V R 如果无效假设是正确的 s 0且v r FDR值就和FWER fam
  • 【小白初学者】项目中遇到步进电机,别慌,照着改

    目录 前言 实物 共阴接法 程序做法 电源模块设置 问题 源代码 前言 首先面试时 当项目涉及了步进电机这一块 我们需要知道 并不需要往底层等深钻 只需要懂基本原理 怎么配置引脚 开发中遇到一些问题及如何解决 可以大胆说出项目中用步进电机遇
  • Linux中wget命令后面的网址如何获取,照做就行

    大家好 今天我们来分享Linux中wget命令后面的网址如何获取 我们在运维工作当中 经常要在服务器上下载各类软件的安装包 这就会使用到wget命令 就由此引出了一个问题 就是 wget后面具体的下载地址如何获取的 做个示范 我们要在Lin
  • 因为计算机丢失vcruntime140.dll如何修复,教你如何快速修复

    前几天 我在使用电脑时遇到了一个棘手的问题 我的电脑上的一个程序 软件名称 突然无法运行 提示我缺少vcruntime140 dll文件 这让我感到非常烦恼 因为我并不清楚如何解决这个问题 在经过一番尝试和搜索后 我终于找到了解决方法 并成
  • 已适配互联网上90%网站的油猴脚本,只能说非常好用

    相信很多朋友都担心上网时需要频繁点击下一页 不仅需要移动鼠标还浪费加载时间 如果能把这类网站的翻页方式全部变成瀑布 只需滑动鼠标滚轮就能自动切换页面岂不是很好 安排 今儿这个油猴脚本能让你深感神奇 其实Morley上个月在一个软件集锦里把这
  • 日常生活57种排毒食物大盘点

    日常生活57种排毒食物大盘点 食品添加剂 高脂肪食物 杀虫剂 空气中的有毒排放物 越来越多的毒素充斥着我们的生活 痤疮 口臭 便秘 头疼 水肿 肥胖 这些都是体内毒素积聚的信号 于是偶跟风搜集了很多排毒的方法 食物 注意事项 拿出来与大家分
  • mysql常见的存储引擎有哪些?

    MySQL中常用的四种存储引擎分别是 MyISAM InnoDB MEMORY ARCHIVE MySQL 5 5版本后默认的存储引擎为InnoDB InnoDB存储引擎 InnoDB是MySQL默认的事务型存储引擎 使用最广泛 基于聚簇索
  • uni-app小白【h5,vue,小程序的区别】

    uni app 传统的h5只有一端 就是浏览器 但是uni app可以横跨7端 虽然它还是前端 但与传统的h5有明显的区别 网络模型的变化 以前的网络大多都是b s 服务端代码混合在页面里 现在是C S前后端分离 通过js api 类似aj
  • ChatGPT时代,如何训练大脑,以后不会被人工智能取代

    nbsp 当有一天 你的小孩子问我将来会不会被AI代替的时候 为人父母的我们应该怎么回答小孩子的问题呢 不知各位是否刷到一位名为浅爸谈英语的博主爸爸分享与他女儿关于AI对话的视频 这段对话很有启发性 父亲的回答也很中肯 可以通过这段对话探讨
  • 元宇宙背后,你应该了解的人工智能核心技术

    原创 王稳钺 资料来源 单博 一 真假元宇宙 最近元宇宙这个概念非常火 网上的资料也是铺天盖地 但个人认为元宇宙这个概念里蹭热点的人非常的多 元宇宙还是处于概念为主的阶段 很多人说自己在做元宇宙 但其实都是真假难辨的状态 在元宇宙这个词出现
  • 商标45类分类表明细表_2019版注册商标分类表,商标注册45类范围明细

    注册商标的时候都是要确定具体的产品或服务的 目前我国商标分类是用 类似商品和服务区分表 基于尼斯分类第十一版 2019年版这本分类书 这本分类表也是全球通用的分类表 商标分类总共有45个类别 1 34类是产品类 35 45类是服务类 这45
  • [SecureCRT]Public Key Authentication Failed

    取消勾选PublicKey
  • ABB工业机器人程序编写与实战

    任务 实现物件从一个位置移动到另一个位置 1 补充的知识点 1 1ABB工业机器人编程语言PAPID 任务 程序模块 系统模块 例行程序 PP指针 机器人运动指令 MoveJ ToPoint Speed Zone Tool Wobj Mov
  • 经验误差与过拟合

    一 经验误差 一般在分类问题中 我们把分类错误的样本数占样本总数的比例称作 错误率 即如果在m个样本中有a个样本分类错误 则错误率为E a m 则相对的 1 E称为精度 即精度 1 错误率 更一般的 我们把学习器的实际预测输出与样本的真实输
  • 微信小程序实战项目

    基于微信小程序的在线商城点单系统 前言 闲来无事 想以后自己开一个小超市或者小吃店 能够支持线上下单 既方便客户也方便自己 系统采用C 语言作为后端实现与小程序的交互 给用来学习或者想自己开个小店的朋友当个参考 文末获取源码联系 精彩专栏持