Merge pull request '6.9' (#19) from zhy into master
Reviewed-on: http://git.luyuan.tk/luyuan/deming/pulls/19
This commit is contained in:
		
						commit
						ccef8eb3e3
					
				
							
								
								
									
										106
									
								
								pageC/cart/ConfirmOrder.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										106
									
								
								pageC/cart/ConfirmOrder.vue
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,106 @@
 | 
				
			|||||||
 | 
					<template>
 | 
				
			||||||
 | 
						<view class="order">
 | 
				
			||||||
 | 
							<view class="info-address">
 | 
				
			||||||
 | 
								<image src="../static/image/2.png" class="address-icon"></image>
 | 
				
			||||||
 | 
								<view class="address">
 | 
				
			||||||
 | 
									<view class="user-info">
 | 
				
			||||||
 | 
										<view>胖胖</view>
 | 
				
			||||||
 | 
										<view>18220171014</view>
 | 
				
			||||||
 | 
									</view>
 | 
				
			||||||
 | 
									<view class="address-text u-line-2">山东省泰安市泰山区东岳大街与克山路交汇口银山店四楼橙天影视南邻山东省泰安市泰山区东岳大街与克山路交汇口银山店四楼橙天影视南邻</view>
 | 
				
			||||||
 | 
								</view>
 | 
				
			||||||
 | 
								<image src="../static/image/1.png" class="right"></image>
 | 
				
			||||||
 | 
							</view>
 | 
				
			||||||
 | 
							<view class="main">
 | 
				
			||||||
 | 
								<view class="goods-info">
 | 
				
			||||||
 | 
									<view class="store">
 | 
				
			||||||
 | 
										<image></image>
 | 
				
			||||||
 | 
										<view>胖胖的店</view>
 | 
				
			||||||
 | 
									</view>
 | 
				
			||||||
 | 
									<view class="goods">
 | 
				
			||||||
 | 
										<view v-for="(goods, g_index) in 1" :key="g_index" class="goods-item">
 | 
				
			||||||
 | 
											<image></image>
 | 
				
			||||||
 | 
											<view class="info">
 | 
				
			||||||
 | 
												<view class="name u-line-2">木糖少女小紫薯西装领连衣裙夏季新款女装夏收腰格子格纹裙子</view>
 | 
				
			||||||
 | 
												<view class="cart-info">
 | 
				
			||||||
 | 
													<view class="price">¥99</view>
 | 
				
			||||||
 | 
													<view class="num">
 | 
				
			||||||
 | 
														<view class="reduce">-</view>
 | 
				
			||||||
 | 
														<view class="value">2</view>
 | 
				
			||||||
 | 
														<view class="increase">+</view>
 | 
				
			||||||
 | 
													</view>
 | 
				
			||||||
 | 
												</view>
 | 
				
			||||||
 | 
											</view>
 | 
				
			||||||
 | 
										</view>
 | 
				
			||||||
 | 
									</view>
 | 
				
			||||||
 | 
								</view>
 | 
				
			||||||
 | 
								<view class="order-info">
 | 
				
			||||||
 | 
									<view>
 | 
				
			||||||
 | 
										<view>优惠券折扣</view>
 | 
				
			||||||
 | 
										<view>
 | 
				
			||||||
 | 
											<view>-¥10.00</view>
 | 
				
			||||||
 | 
											<image src="../static/image/1.png"></image>
 | 
				
			||||||
 | 
										</view>
 | 
				
			||||||
 | 
									</view>
 | 
				
			||||||
 | 
									<view>
 | 
				
			||||||
 | 
										<view>配送方式</view>
 | 
				
			||||||
 | 
										<view>
 | 
				
			||||||
 | 
											<view>快递</view>
 | 
				
			||||||
 | 
											<image src="../static/image/1.png"></image>
 | 
				
			||||||
 | 
										</view>
 | 
				
			||||||
 | 
									</view>
 | 
				
			||||||
 | 
									<view>
 | 
				
			||||||
 | 
										<view>支付方式</view>
 | 
				
			||||||
 | 
										<view>
 | 
				
			||||||
 | 
											<view>微信</view>
 | 
				
			||||||
 | 
											<image src="../static/image/1.png"></image>
 | 
				
			||||||
 | 
										</view>
 | 
				
			||||||
 | 
									</view>
 | 
				
			||||||
 | 
								</view>
 | 
				
			||||||
 | 
							</view>
 | 
				
			||||||
 | 
						</view>
 | 
				
			||||||
 | 
					</template>
 | 
				
			||||||
 | 
					<script>
 | 
				
			||||||
 | 
					export default {
 | 
				
			||||||
 | 
						data() {
 | 
				
			||||||
 | 
							return {}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					</script>
 | 
				
			||||||
 | 
					<style lang="scss" scoped>
 | 
				
			||||||
 | 
					.order {
 | 
				
			||||||
 | 
						.info-address {
 | 
				
			||||||
 | 
								padding: 30rpx;
 | 
				
			||||||
 | 
								display: flex;
 | 
				
			||||||
 | 
								align-items: center;
 | 
				
			||||||
 | 
								margin-bottom: 10rpx;
 | 
				
			||||||
 | 
								background:rgba(255,255,255,1);
 | 
				
			||||||
 | 
								.address-icon {
 | 
				
			||||||
 | 
									width: 28rpx;
 | 
				
			||||||
 | 
									height: 34rpx;
 | 
				
			||||||
 | 
									margin-right: 31rpx;
 | 
				
			||||||
 | 
									flex-shrink: 0;
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
								.address-right {
 | 
				
			||||||
 | 
									.user-info {
 | 
				
			||||||
 | 
										display: flex;
 | 
				
			||||||
 | 
										align-items: center;
 | 
				
			||||||
 | 
										font-size: 28rpx;
 | 
				
			||||||
 | 
										color: rgba(51,51,51,1);
 | 
				
			||||||
 | 
										margin-bottom: 20rpx;
 | 
				
			||||||
 | 
										margin-right: 13rpx;
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
									.address-text {
 | 
				
			||||||
 | 
										font-size: 24rpx;
 | 
				
			||||||
 | 
										color: rgba(102,102,102,1);
 | 
				
			||||||
 | 
										line-height: 42rpx;
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
								.right {
 | 
				
			||||||
 | 
									margin-left: auto;
 | 
				
			||||||
 | 
									width: 12rpx;
 | 
				
			||||||
 | 
									height: 22rpx;
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					</style>
 | 
				
			||||||
							
								
								
									
										298
									
								
								pageC/cart/index.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										298
									
								
								pageC/cart/index.vue
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,298 @@
 | 
				
			|||||||
 | 
					<template>
 | 
				
			||||||
 | 
						<view class="cart">
 | 
				
			||||||
 | 
							<u-checkbox-group class="cart-main" @change="storeChange">
 | 
				
			||||||
 | 
								<view v-for="(store, s_index) in list" :key="s_index" class="cart-item">
 | 
				
			||||||
 | 
									<view class="store">
 | 
				
			||||||
 | 
										<u-checkbox v-model="store.checked" shape="circle" active-color="#FF780F" icon-size="35" :name="s_index" @change="storeaAloneChange"></u-checkbox>
 | 
				
			||||||
 | 
										<view class="name">
 | 
				
			||||||
 | 
											<image></image>
 | 
				
			||||||
 | 
											<view>胖胖的店</view>
 | 
				
			||||||
 | 
										</view>
 | 
				
			||||||
 | 
									</view>
 | 
				
			||||||
 | 
									<view class="goods">
 | 
				
			||||||
 | 
										<u-checkbox-group @change="goodsChange($event, s_index)">
 | 
				
			||||||
 | 
											<view v-for="(goods, g_index) in store.goods" :key="g_index" class="goods-item">
 | 
				
			||||||
 | 
												<u-checkbox v-model="goods.checked" shape="circle" active-color="#FF780F" icon-size="35" :name="g_index" ></u-checkbox>
 | 
				
			||||||
 | 
												<image></image>
 | 
				
			||||||
 | 
												<view class="info">
 | 
				
			||||||
 | 
													<view class="name u-line-2">木糖少女小紫薯西装领连衣裙夏季新款女装夏收腰格子格纹裙子</view>
 | 
				
			||||||
 | 
													<view class="cart-info">
 | 
				
			||||||
 | 
														<view class="price">¥99</view>
 | 
				
			||||||
 | 
														<view class="num">
 | 
				
			||||||
 | 
															<view class="reduce">-</view>
 | 
				
			||||||
 | 
															<view class="value">2</view>
 | 
				
			||||||
 | 
															<view class="increase">+</view>
 | 
				
			||||||
 | 
														</view>
 | 
				
			||||||
 | 
													</view>
 | 
				
			||||||
 | 
												</view>
 | 
				
			||||||
 | 
											</view>
 | 
				
			||||||
 | 
										</u-checkbox-group>
 | 
				
			||||||
 | 
									</view>
 | 
				
			||||||
 | 
								</view>
 | 
				
			||||||
 | 
							</u-checkbox-group>
 | 
				
			||||||
 | 
							<view class="balance">
 | 
				
			||||||
 | 
								<u-checkbox-group>
 | 
				
			||||||
 | 
									<u-checkbox v-model="checkedAll" shape="circle" active-color="#FF780F" icon-size="35" label-size="30" @change="totalChange">
 | 
				
			||||||
 | 
										全选
 | 
				
			||||||
 | 
									</u-checkbox>
 | 
				
			||||||
 | 
								</u-checkbox-group>
 | 
				
			||||||
 | 
								<view class="total-price" v-if="status == '编辑'">
 | 
				
			||||||
 | 
									<view class="title">合计:</view>
 | 
				
			||||||
 | 
									<view class="value">¥9.80</view>
 | 
				
			||||||
 | 
								</view>
 | 
				
			||||||
 | 
								<view class="cart-btn" v-if="status == '编辑'">结算</view>
 | 
				
			||||||
 | 
								<view class="delete-btn" v-if="status == '完成'">删除</view>
 | 
				
			||||||
 | 
							</view>
 | 
				
			||||||
 | 
						</view>
 | 
				
			||||||
 | 
					</template>
 | 
				
			||||||
 | 
					<script>
 | 
				
			||||||
 | 
					export default {
 | 
				
			||||||
 | 
						data() {
 | 
				
			||||||
 | 
							return {
 | 
				
			||||||
 | 
								status: '编辑',
 | 
				
			||||||
 | 
								list: [
 | 
				
			||||||
 | 
									{
 | 
				
			||||||
 | 
										goods: [
 | 
				
			||||||
 | 
											{
 | 
				
			||||||
 | 
												checked: false
 | 
				
			||||||
 | 
											},
 | 
				
			||||||
 | 
											{
 | 
				
			||||||
 | 
												checked: false
 | 
				
			||||||
 | 
											}
 | 
				
			||||||
 | 
										],
 | 
				
			||||||
 | 
										checked: false
 | 
				
			||||||
 | 
									},
 | 
				
			||||||
 | 
									{
 | 
				
			||||||
 | 
										goods: [
 | 
				
			||||||
 | 
											{
 | 
				
			||||||
 | 
												checked: false
 | 
				
			||||||
 | 
											},
 | 
				
			||||||
 | 
											{
 | 
				
			||||||
 | 
												checked: false
 | 
				
			||||||
 | 
											}
 | 
				
			||||||
 | 
										],
 | 
				
			||||||
 | 
										checked: false
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
								],
 | 
				
			||||||
 | 
								checkedAll: false
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						},
 | 
				
			||||||
 | 
						methods: {
 | 
				
			||||||
 | 
							totalChange(e) {
 | 
				
			||||||
 | 
								// 切换所有商品的状态
 | 
				
			||||||
 | 
								this.list.forEach(store => {
 | 
				
			||||||
 | 
									store.checked = e.value;
 | 
				
			||||||
 | 
									store.goods.forEach(goods => {
 | 
				
			||||||
 | 
										goods.checked = store.checked;
 | 
				
			||||||
 | 
									})
 | 
				
			||||||
 | 
								})
 | 
				
			||||||
 | 
							},
 | 
				
			||||||
 | 
							storeChange() {
 | 
				
			||||||
 | 
								// 判断所有商家状态
 | 
				
			||||||
 | 
								let checked = true;
 | 
				
			||||||
 | 
								this.list.forEach(item => {
 | 
				
			||||||
 | 
									if(!item.checked) checked = false;
 | 
				
			||||||
 | 
								})
 | 
				
			||||||
 | 
								this.checkedAll = checked;
 | 
				
			||||||
 | 
							},
 | 
				
			||||||
 | 
							storeaAloneChange(e) {
 | 
				
			||||||
 | 
								// 切换当前商家的商品状态
 | 
				
			||||||
 | 
								this.list[e.name].goods.forEach(goods => {
 | 
				
			||||||
 | 
									goods.checked = e.value;
 | 
				
			||||||
 | 
								})
 | 
				
			||||||
 | 
							},
 | 
				
			||||||
 | 
							goodsChange(...value) {
 | 
				
			||||||
 | 
								// console.log(value)
 | 
				
			||||||
 | 
								// 判断商品是否全选
 | 
				
			||||||
 | 
								let checked = true;
 | 
				
			||||||
 | 
								this.list[value[1]].goods.forEach(item => {
 | 
				
			||||||
 | 
									if(!item.checked) checked = false;
 | 
				
			||||||
 | 
								})
 | 
				
			||||||
 | 
								this.list[value[1]].checked = checked;
 | 
				
			||||||
 | 
								this.storeChange();
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						},
 | 
				
			||||||
 | 
						onNavigationBarButtonTap(btn) {
 | 
				
			||||||
 | 
							console.log(btn);
 | 
				
			||||||
 | 
							// this.status = btn.text;
 | 
				
			||||||
 | 
							// #ifdef H5
 | 
				
			||||||
 | 
							if(this.status == '编辑'){
 | 
				
			||||||
 | 
								this.status = "完成";
 | 
				
			||||||
 | 
							} else {
 | 
				
			||||||
 | 
								this.status = "编辑";
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
							console.log(this.status);
 | 
				
			||||||
 | 
							// #endif
 | 
				
			||||||
 | 
							if(btn.index == 0){
 | 
				
			||||||
 | 
								let pages = getCurrentPages();
 | 
				
			||||||
 | 
								let page = pages[pages.length - 1];
 | 
				
			||||||
 | 
								// #ifdef APP-PLUS
 | 
				
			||||||
 | 
								let currentWebview = page.$getAppWebview();
 | 
				
			||||||
 | 
								let titleObj = currentWebview.getStyle().titleNView;
 | 
				
			||||||
 | 
								console.log(1);
 | 
				
			||||||
 | 
								console.log(JSON.stringify(titleObj.buttons[0]));
 | 
				
			||||||
 | 
								if (!titleObj.buttons) {
 | 
				
			||||||
 | 
									return;
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
								if(titleObj.buttons[0].text == '编辑'){
 | 
				
			||||||
 | 
									titleObj.buttons[0].text = "完成";
 | 
				
			||||||
 | 
								}else{
 | 
				
			||||||
 | 
									titleObj.buttons[0].text = "编辑";
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
								currentWebview.setStyle({
 | 
				
			||||||
 | 
									titleNView: titleObj
 | 
				
			||||||
 | 
								});
 | 
				
			||||||
 | 
								// #endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					</script>
 | 
				
			||||||
 | 
					<style lang="scss" scoped>
 | 
				
			||||||
 | 
					.cart {
 | 
				
			||||||
 | 
						padding-bottom: 100rpx;
 | 
				
			||||||
 | 
						.cart-main {
 | 
				
			||||||
 | 
							display: block;
 | 
				
			||||||
 | 
							.cart-item {
 | 
				
			||||||
 | 
								padding: 40rpx 30rpx;
 | 
				
			||||||
 | 
								.store {
 | 
				
			||||||
 | 
									display: flex;
 | 
				
			||||||
 | 
									align-items: center;
 | 
				
			||||||
 | 
									margin-bottom: 20rpx;
 | 
				
			||||||
 | 
									.u-checkbox {
 | 
				
			||||||
 | 
										margin-right: 20rpx;
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
									.name {
 | 
				
			||||||
 | 
										display: flex;
 | 
				
			||||||
 | 
										align-items: center;
 | 
				
			||||||
 | 
										> image {
 | 
				
			||||||
 | 
											width: 60rpx;
 | 
				
			||||||
 | 
											height: 60rpx;
 | 
				
			||||||
 | 
											border-radius: 50%;
 | 
				
			||||||
 | 
											border: 1rpx solid #000;
 | 
				
			||||||
 | 
											margin-right: 15rpx;
 | 
				
			||||||
 | 
										}
 | 
				
			||||||
 | 
										> view {
 | 
				
			||||||
 | 
											font-size: 28rpx;
 | 
				
			||||||
 | 
											color: rgba(51,51,51,1);
 | 
				
			||||||
 | 
										}
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
								.goods {
 | 
				
			||||||
 | 
									.u-checkbox-group {
 | 
				
			||||||
 | 
										display: flex;
 | 
				
			||||||
 | 
										flex-direction: column;
 | 
				
			||||||
 | 
										.goods-item {
 | 
				
			||||||
 | 
											display: flex;
 | 
				
			||||||
 | 
											align-items: center;
 | 
				
			||||||
 | 
											&:not(:last-child) {
 | 
				
			||||||
 | 
												margin-bottom: 20rpx;
 | 
				
			||||||
 | 
											}
 | 
				
			||||||
 | 
											> image {
 | 
				
			||||||
 | 
												margin: 0 30rpx 0 20rpx; 
 | 
				
			||||||
 | 
												width: 180rpx;
 | 
				
			||||||
 | 
												height: 160rpx;
 | 
				
			||||||
 | 
												border-radius: 10rpx;
 | 
				
			||||||
 | 
												background-color: aqua;
 | 
				
			||||||
 | 
												flex-shrink: 0;
 | 
				
			||||||
 | 
											}
 | 
				
			||||||
 | 
											.info {
 | 
				
			||||||
 | 
												width: 418rpx;
 | 
				
			||||||
 | 
												height: 160rpx;
 | 
				
			||||||
 | 
												display: flex;
 | 
				
			||||||
 | 
												flex-direction: column;
 | 
				
			||||||
 | 
												justify-content: space-between;
 | 
				
			||||||
 | 
												.name {
 | 
				
			||||||
 | 
													font-size: 30rpx;
 | 
				
			||||||
 | 
													color: rgba(51,51,51,1);
 | 
				
			||||||
 | 
												}
 | 
				
			||||||
 | 
												.cart-info {
 | 
				
			||||||
 | 
													display: flex;
 | 
				
			||||||
 | 
													align-items: center;
 | 
				
			||||||
 | 
													justify-content: space-between;
 | 
				
			||||||
 | 
													.price {
 | 
				
			||||||
 | 
														font-size: 30rpx;
 | 
				
			||||||
 | 
														font-weight: 500;
 | 
				
			||||||
 | 
														color: rgba(255,49,49,1);
 | 
				
			||||||
 | 
													}
 | 
				
			||||||
 | 
													.num {
 | 
				
			||||||
 | 
														display: flex;
 | 
				
			||||||
 | 
														width: 118rpx;
 | 
				
			||||||
 | 
														height: 39rpx;
 | 
				
			||||||
 | 
														border: 1rpx solid rgba(217,215,215,1);
 | 
				
			||||||
 | 
														border-radius:4px;
 | 
				
			||||||
 | 
														.reduce, .increase {
 | 
				
			||||||
 | 
															flex: 1;
 | 
				
			||||||
 | 
															font-size: 11rpx;
 | 
				
			||||||
 | 
															color: #FF780F;
 | 
				
			||||||
 | 
															line-height: 39rpx;
 | 
				
			||||||
 | 
															text-align: center;
 | 
				
			||||||
 | 
														}
 | 
				
			||||||
 | 
														.value {
 | 
				
			||||||
 | 
															flex: 1;
 | 
				
			||||||
 | 
															font-size: 22rpx;
 | 
				
			||||||
 | 
															color:rgba(51,51,51,1);
 | 
				
			||||||
 | 
															line-height: 39rpx;
 | 
				
			||||||
 | 
															text-align: center;
 | 
				
			||||||
 | 
															border: 1rpx #D9D7D7 solid {
 | 
				
			||||||
 | 
																top: 0px;
 | 
				
			||||||
 | 
																bottom: 0px;
 | 
				
			||||||
 | 
															}
 | 
				
			||||||
 | 
														}
 | 
				
			||||||
 | 
													}
 | 
				
			||||||
 | 
												}
 | 
				
			||||||
 | 
											}
 | 
				
			||||||
 | 
										}
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						.balance {
 | 
				
			||||||
 | 
							position: fixed;
 | 
				
			||||||
 | 
							bottom: 0;
 | 
				
			||||||
 | 
							left: 0;
 | 
				
			||||||
 | 
							z-index: 9;
 | 
				
			||||||
 | 
							width: 100%;
 | 
				
			||||||
 | 
							height: 98rpx;
 | 
				
			||||||
 | 
							background: rgba(255,255,255,1);
 | 
				
			||||||
 | 
							display: flex;
 | 
				
			||||||
 | 
							align-items: center;
 | 
				
			||||||
 | 
							padding: 30rpx;
 | 
				
			||||||
 | 
							.total-price {
 | 
				
			||||||
 | 
								margin-left: auto;
 | 
				
			||||||
 | 
								font-size: 30rpx;
 | 
				
			||||||
 | 
								display: flex;
 | 
				
			||||||
 | 
								align-items: center;
 | 
				
			||||||
 | 
								.title {
 | 
				
			||||||
 | 
									color: #333333;
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
								.value {
 | 
				
			||||||
 | 
									color: #FF3131;
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
							.cart-btn {
 | 
				
			||||||
 | 
								margin-left: 50rpx;
 | 
				
			||||||
 | 
								justify-items: flex-end;
 | 
				
			||||||
 | 
								width: 160rpx;
 | 
				
			||||||
 | 
								height: 60rpx;
 | 
				
			||||||
 | 
								background: rgba(255,120,15,1);
 | 
				
			||||||
 | 
								border-radius: 30rpx;
 | 
				
			||||||
 | 
								font-size: 30rpx;
 | 
				
			||||||
 | 
								color: rgba(255,255,255,1);
 | 
				
			||||||
 | 
								line-height: 60rpx;
 | 
				
			||||||
 | 
								text-align: center;
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
							.delete-btn {
 | 
				
			||||||
 | 
								margin-left: auto;
 | 
				
			||||||
 | 
								width: 160rpx;
 | 
				
			||||||
 | 
								height: 60rpx;
 | 
				
			||||||
 | 
								background: rgba(255,49,49,1);
 | 
				
			||||||
 | 
								border-radius: 30rpx;
 | 
				
			||||||
 | 
								font-size: 30rpx;
 | 
				
			||||||
 | 
								color: rgba(255,255,255,1);
 | 
				
			||||||
 | 
								line-height: 60rpx;
 | 
				
			||||||
 | 
								text-align: center;
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					</style>
 | 
				
			||||||
							
								
								
									
										265
									
								
								pageC/classify/index.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										265
									
								
								pageC/classify/index.vue
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,265 @@
 | 
				
			|||||||
 | 
					<template>
 | 
				
			||||||
 | 
						<view class="u-wrap">
 | 
				
			||||||
 | 
							<view class="u-menu-wrap">
 | 
				
			||||||
 | 
								<scroll-view scroll-y scroll-with-animation class="u-tab-view menu-scroll-view" :scroll-top="scrollTop"
 | 
				
			||||||
 | 
								 :scroll-into-view="itemId">
 | 
				
			||||||
 | 
									<view v-for="(item,index) in tabbar" :key="index" class="u-tab-item" :class="[current == index ? 'u-tab-item-active' : '']"
 | 
				
			||||||
 | 
									 @tap.stop="swichMenu(index)">
 | 
				
			||||||
 | 
										<text class="u-line-1">{{item.name}}</text>
 | 
				
			||||||
 | 
									</view>
 | 
				
			||||||
 | 
								</scroll-view>
 | 
				
			||||||
 | 
								<scroll-view :scroll-top="scrollRightTop" scroll-y scroll-with-animation class="right-box" @scroll="rightScroll">
 | 
				
			||||||
 | 
									<view class="page-view">
 | 
				
			||||||
 | 
										<view class="class-item" :id="'item' + index" v-for="(item , index) in tabbar" :key="index">
 | 
				
			||||||
 | 
											<view class="item-title">
 | 
				
			||||||
 | 
												<text>{{item.name}}</text>
 | 
				
			||||||
 | 
											</view>
 | 
				
			||||||
 | 
											<view class="item-container">
 | 
				
			||||||
 | 
												<view class="thumb-box" v-for="(item1, index1) in item.foods" :key="index1">
 | 
				
			||||||
 | 
													<image class="item-menu-image" :src="item1.icon" mode=""></image>
 | 
				
			||||||
 | 
													<view class="item-menu-name">{{item1.name}}</view>
 | 
				
			||||||
 | 
												</view>
 | 
				
			||||||
 | 
											</view>
 | 
				
			||||||
 | 
										</view>
 | 
				
			||||||
 | 
									</view>
 | 
				
			||||||
 | 
								</scroll-view>
 | 
				
			||||||
 | 
							</view>
 | 
				
			||||||
 | 
						</view>
 | 
				
			||||||
 | 
					</template>
 | 
				
			||||||
 | 
					<script>
 | 
				
			||||||
 | 
						import classifyData from '@/static/js/classify.data.js';
 | 
				
			||||||
 | 
						export default {
 | 
				
			||||||
 | 
							data() {
 | 
				
			||||||
 | 
								return {
 | 
				
			||||||
 | 
									scrollTop: 0, //tab标题的滚动条位置
 | 
				
			||||||
 | 
									oldScrollTop: 0,
 | 
				
			||||||
 | 
									current: 0, // 预设当前项的值
 | 
				
			||||||
 | 
									menuHeight: 0, // 左边菜单的高度
 | 
				
			||||||
 | 
									menuItemHeight: 0, // 左边菜单item的高度
 | 
				
			||||||
 | 
									itemId: '', // 栏目右边scroll-view用于滚动的id
 | 
				
			||||||
 | 
									tabbar: classifyData,
 | 
				
			||||||
 | 
									menuItemPos: [],
 | 
				
			||||||
 | 
									arr: [],
 | 
				
			||||||
 | 
									scrollRightTop: 0, // 右边栏目scroll-view的滚动条高度
 | 
				
			||||||
 | 
									timer: null, // 定时器
 | 
				
			||||||
 | 
									
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
							},
 | 
				
			||||||
 | 
							onLoad() {
 | 
				
			||||||
 | 
								
 | 
				
			||||||
 | 
							},
 | 
				
			||||||
 | 
							onReady() {
 | 
				
			||||||
 | 
								this.getMenuItemTop()
 | 
				
			||||||
 | 
							},
 | 
				
			||||||
 | 
							methods: {
 | 
				
			||||||
 | 
								// 点击左边的栏目切换
 | 
				
			||||||
 | 
								async swichMenu(index) {
 | 
				
			||||||
 | 
									if(this.arr.length == 0) {
 | 
				
			||||||
 | 
										await this.getMenuItemTop();
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
									if (index == this.current) return;
 | 
				
			||||||
 | 
									this.scrollRightTop = this.oldScrollTop;
 | 
				
			||||||
 | 
									this.$nextTick(function(){
 | 
				
			||||||
 | 
										this.scrollRightTop = this.arr[index];
 | 
				
			||||||
 | 
										this.current = index;
 | 
				
			||||||
 | 
										this.leftMenuStatus(index);
 | 
				
			||||||
 | 
									})
 | 
				
			||||||
 | 
								},
 | 
				
			||||||
 | 
								// 获取一个目标元素的高度
 | 
				
			||||||
 | 
								getElRect(elClass, dataVal) {
 | 
				
			||||||
 | 
									new Promise((resolve, reject) => {
 | 
				
			||||||
 | 
										const query = uni.createSelectorQuery().in(this);
 | 
				
			||||||
 | 
										query.select('.' + elClass).fields({
 | 
				
			||||||
 | 
											size: true
 | 
				
			||||||
 | 
										}, res => {
 | 
				
			||||||
 | 
											// 如果节点尚未生成,res值为null,循环调用执行
 | 
				
			||||||
 | 
											if (!res) {
 | 
				
			||||||
 | 
												setTimeout(() => {
 | 
				
			||||||
 | 
													this.getElRect(elClass);
 | 
				
			||||||
 | 
												}, 10);
 | 
				
			||||||
 | 
												return;
 | 
				
			||||||
 | 
											}
 | 
				
			||||||
 | 
											this[dataVal] = res.height;
 | 
				
			||||||
 | 
											resolve();
 | 
				
			||||||
 | 
										}).exec();
 | 
				
			||||||
 | 
									})
 | 
				
			||||||
 | 
								},
 | 
				
			||||||
 | 
								// 观测元素相交状态
 | 
				
			||||||
 | 
								async observer() {
 | 
				
			||||||
 | 
									this.tabbar.map((val, index) => {
 | 
				
			||||||
 | 
										let observer = uni.createIntersectionObserver(this);
 | 
				
			||||||
 | 
										// 检测右边scroll-view的id为itemxx的元素与right-box的相交状态
 | 
				
			||||||
 | 
										// 如果跟.right-box底部相交,就动态设置左边栏目的活动状态
 | 
				
			||||||
 | 
										observer.relativeTo('.right-box', {
 | 
				
			||||||
 | 
											top: 0
 | 
				
			||||||
 | 
										}).observe('#item' + index, res => {
 | 
				
			||||||
 | 
											if (res.intersectionRatio > 0) {
 | 
				
			||||||
 | 
												let id = res.id.substring(4);
 | 
				
			||||||
 | 
												this.leftMenuStatus(id);
 | 
				
			||||||
 | 
											}
 | 
				
			||||||
 | 
										})
 | 
				
			||||||
 | 
									})
 | 
				
			||||||
 | 
								},
 | 
				
			||||||
 | 
								// 设置左边菜单的滚动状态
 | 
				
			||||||
 | 
								async leftMenuStatus(index) {
 | 
				
			||||||
 | 
									this.current = index;
 | 
				
			||||||
 | 
									// 如果为0,意味着尚未初始化
 | 
				
			||||||
 | 
									if (this.menuHeight == 0 || this.menuItemHeight == 0) {
 | 
				
			||||||
 | 
										await this.getElRect('menu-scroll-view', 'menuHeight');
 | 
				
			||||||
 | 
										await this.getElRect('u-tab-item', 'menuItemHeight');
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
									// 将菜单活动item垂直居中
 | 
				
			||||||
 | 
									this.scrollTop = index * this.menuItemHeight + this.menuItemHeight / 2 - this.menuHeight / 2;
 | 
				
			||||||
 | 
								},
 | 
				
			||||||
 | 
								// 获取右边菜单每个item到顶部的距离
 | 
				
			||||||
 | 
								getMenuItemTop() {
 | 
				
			||||||
 | 
									new Promise(resolve => {
 | 
				
			||||||
 | 
										let selectorQuery = uni.createSelectorQuery();
 | 
				
			||||||
 | 
										selectorQuery.selectAll('.class-item').boundingClientRect((rects) => {
 | 
				
			||||||
 | 
											// 如果节点尚未生成,rects值为[](因为用selectAll,所以返回的是数组),循环调用执行
 | 
				
			||||||
 | 
											if(!rects.length) {
 | 
				
			||||||
 | 
												setTimeout(() => {
 | 
				
			||||||
 | 
													this.getMenuItemTop();
 | 
				
			||||||
 | 
												}, 10);
 | 
				
			||||||
 | 
												return ;
 | 
				
			||||||
 | 
											}
 | 
				
			||||||
 | 
											rects.forEach((rect) => {
 | 
				
			||||||
 | 
												// 这里减去rects[0].top,是因为第一项顶部可能不是贴到导航栏(比如有个搜索框的情况)
 | 
				
			||||||
 | 
												this.arr.push(rect.top - rects[0].top);
 | 
				
			||||||
 | 
												resolve();
 | 
				
			||||||
 | 
											})
 | 
				
			||||||
 | 
										}).exec()
 | 
				
			||||||
 | 
									})
 | 
				
			||||||
 | 
								},
 | 
				
			||||||
 | 
								// 右边菜单滚动
 | 
				
			||||||
 | 
								async rightScroll(e) {
 | 
				
			||||||
 | 
									this.oldScrollTop = e.detail.scrollTop;
 | 
				
			||||||
 | 
									if(this.arr.length == 0) {
 | 
				
			||||||
 | 
										await this.getMenuItemTop();
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
									if(this.timer) return ;
 | 
				
			||||||
 | 
									if(!this.menuHeight) {
 | 
				
			||||||
 | 
										await this.getElRect('menu-scroll-view', 'menuHeight');
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
									setTimeout(() => { // 节流
 | 
				
			||||||
 | 
										this.timer = null;
 | 
				
			||||||
 | 
										// scrollHeight为右边菜单垂直中点位置
 | 
				
			||||||
 | 
										let scrollHeight = e.detail.scrollTop + this.menuHeight / 2;
 | 
				
			||||||
 | 
										for (let i = 0; i < this.arr.length; i++) {
 | 
				
			||||||
 | 
											let height1 = this.arr[i];
 | 
				
			||||||
 | 
											let height2 = this.arr[i + 1];
 | 
				
			||||||
 | 
											// 如果不存在height2,意味着数据循环已经到了最后一个,设置左边菜单为最后一项即可
 | 
				
			||||||
 | 
											if (!height2 || scrollHeight >= height1 && scrollHeight < height2) {
 | 
				
			||||||
 | 
												this.leftMenuStatus(i);
 | 
				
			||||||
 | 
												return ;
 | 
				
			||||||
 | 
											}
 | 
				
			||||||
 | 
										}
 | 
				
			||||||
 | 
									}, 10)
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					</script>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<style lang="scss" scoped>
 | 
				
			||||||
 | 
						.u-wrap {
 | 
				
			||||||
 | 
							height: calc(100vh);
 | 
				
			||||||
 | 
							/* #ifdef H5 */
 | 
				
			||||||
 | 
							height: calc(100vh - var(--window-top));
 | 
				
			||||||
 | 
							/* #endif */
 | 
				
			||||||
 | 
							display: flex;
 | 
				
			||||||
 | 
							flex-direction: column;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						.u-search-box {
 | 
				
			||||||
 | 
							padding: 18rpx 30rpx;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						.u-menu-wrap {
 | 
				
			||||||
 | 
							flex: 1;
 | 
				
			||||||
 | 
							display: flex;
 | 
				
			||||||
 | 
							overflow: hidden;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						.u-search-inner {
 | 
				
			||||||
 | 
							background-color: rgb(234, 234, 234);
 | 
				
			||||||
 | 
							border-radius: 100rpx;
 | 
				
			||||||
 | 
							display: flex;
 | 
				
			||||||
 | 
							align-items: center;
 | 
				
			||||||
 | 
							padding: 10rpx 16rpx;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						.u-search-text {
 | 
				
			||||||
 | 
							font-size: 26rpx;
 | 
				
			||||||
 | 
							color: $u-tips-color;
 | 
				
			||||||
 | 
							margin-left: 10rpx;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						.u-tab-view {
 | 
				
			||||||
 | 
							width: 200rpx;
 | 
				
			||||||
 | 
							height: 100%;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						.u-tab-item {
 | 
				
			||||||
 | 
							width: 180rpx;
 | 
				
			||||||
 | 
							height: 88rpx;
 | 
				
			||||||
 | 
							border-bottom: 1rpx solid rgba(236,236,236,1);
 | 
				
			||||||
 | 
							// height: 110rpx;
 | 
				
			||||||
 | 
							background: rgba(247,247,247,1);
 | 
				
			||||||
 | 
							box-sizing: border-box;
 | 
				
			||||||
 | 
							display: flex;
 | 
				
			||||||
 | 
							align-items: center;
 | 
				
			||||||
 | 
							justify-content: center;
 | 
				
			||||||
 | 
							font-size: 28rpx;
 | 
				
			||||||
 | 
							color: #666666;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						.u-tab-item-active {
 | 
				
			||||||
 | 
							position: relative;
 | 
				
			||||||
 | 
							color: #FF780F;
 | 
				
			||||||
 | 
							background: #fff;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						// .u-tab-item-active::before {
 | 
				
			||||||
 | 
						// 	content: "";
 | 
				
			||||||
 | 
						// 	position: absolute;
 | 
				
			||||||
 | 
						// 	border-left: 4px solid $u-type-primary;
 | 
				
			||||||
 | 
						// 	height: 32rpx;
 | 
				
			||||||
 | 
						// 	left: 0;
 | 
				
			||||||
 | 
						// 	top: 39rpx;
 | 
				
			||||||
 | 
						// }
 | 
				
			||||||
 | 
						.u-tab-view {
 | 
				
			||||||
 | 
							height: 100%;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						.right-box {
 | 
				
			||||||
 | 
							background-color: rgb(250, 250, 250);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						.page-view {
 | 
				
			||||||
 | 
							padding: 16rpx;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						.class-item {
 | 
				
			||||||
 | 
							margin-bottom: 30rpx;
 | 
				
			||||||
 | 
							background-color: #fff;
 | 
				
			||||||
 | 
							padding: 16rpx;
 | 
				
			||||||
 | 
							border-radius: 8rpx;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						.class-item:last-child {
 | 
				
			||||||
 | 
							min-height: 100vh;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						.item-title {
 | 
				
			||||||
 | 
							font-size: 26rpx;
 | 
				
			||||||
 | 
							color: #333333;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						.item-menu-name {
 | 
				
			||||||
 | 
							font-weight: normal;
 | 
				
			||||||
 | 
							font-size: 24rpx;
 | 
				
			||||||
 | 
							color: #666666;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						.item-container {
 | 
				
			||||||
 | 
							display: flex;
 | 
				
			||||||
 | 
							flex-wrap: wrap;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						.thumb-box {
 | 
				
			||||||
 | 
							width: 33.333333%;
 | 
				
			||||||
 | 
							display: flex;
 | 
				
			||||||
 | 
							align-items: center;
 | 
				
			||||||
 | 
							justify-content: center;
 | 
				
			||||||
 | 
							flex-direction: column;
 | 
				
			||||||
 | 
							margin-top: 20rpx;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						.item-menu-image {
 | 
				
			||||||
 | 
							width: 150rpx;
 | 
				
			||||||
 | 
							height: 150rpx;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					</style>
 | 
				
			||||||
							
								
								
									
										
											BIN
										
									
								
								pageC/static/image/1.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								pageC/static/image/1.png
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| 
		 After Width: | Height: | Size: 1.7 KiB  | 
							
								
								
									
										
											BIN
										
									
								
								pageC/static/image/2.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								pageC/static/image/2.png
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| 
		 After Width: | Height: | Size: 4.3 KiB  | 
@ -27,7 +27,7 @@
 | 
				
			|||||||
			</swiper-item>
 | 
								</swiper-item>
 | 
				
			||||||
			<swiper-item class="swiper-item">
 | 
								<swiper-item class="swiper-item">
 | 
				
			||||||
				<scroll-view scroll-y class="coupon">
 | 
									<scroll-view scroll-y class="coupon">
 | 
				
			||||||
					<view v-for="(item, index) in 3" :key="index" class="coupon-item">
 | 
										<view v-for="(item, index) in 13" :key="index" class="coupon-item">
 | 
				
			||||||
						<img src="../static/mine/23.png" />
 | 
											<img src="../static/mine/23.png" />
 | 
				
			||||||
						<view class="coupon-main">
 | 
											<view class="coupon-main">
 | 
				
			||||||
							<view class="coupon-title">萌店十元优惠券</view>
 | 
												<view class="coupon-title">萌店十元优惠券</view>
 | 
				
			||||||
@ -43,7 +43,7 @@
 | 
				
			|||||||
			</swiper-item>
 | 
								</swiper-item>
 | 
				
			||||||
			<swiper-item class="swiper-item">
 | 
								<swiper-item class="swiper-item">
 | 
				
			||||||
				<scroll-view scroll-y class="details">
 | 
									<scroll-view scroll-y class="details">
 | 
				
			||||||
					<view v-for="(item, index) in 6" :key="index" class="details-item">
 | 
										<view v-for="(item, index) in 16" :key="index" class="details-item">
 | 
				
			||||||
						<view class="item-left">
 | 
											<view class="item-left">
 | 
				
			||||||
							<view class="item-title">积分商城兑换礼品</view>
 | 
												<view class="item-title">积分商城兑换礼品</view>
 | 
				
			||||||
							<view class="item-date">2020-03-11</view>
 | 
												<view class="item-date">2020-03-11</view>
 | 
				
			||||||
@ -132,6 +132,7 @@ export default {
 | 
				
			|||||||
			}
 | 
								}
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
		.coupon {
 | 
							.coupon {
 | 
				
			||||||
 | 
								height: 100%;
 | 
				
			||||||
			.coupon-item {
 | 
								.coupon-item {
 | 
				
			||||||
				padding: 30rpx;
 | 
									padding: 30rpx;
 | 
				
			||||||
				background-color: #ffffff;
 | 
									background-color: #ffffff;
 | 
				
			||||||
@ -183,6 +184,7 @@ export default {
 | 
				
			|||||||
			}
 | 
								}
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
		.details {
 | 
							.details {
 | 
				
			||||||
 | 
								height: 100%;
 | 
				
			||||||
			.details-item {
 | 
								.details-item {
 | 
				
			||||||
				background-color: #ffffff;
 | 
									background-color: #ffffff;
 | 
				
			||||||
				padding: 23rpx 30rpx;
 | 
									padding: 23rpx 30rpx;
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										76
									
								
								pages.json
									
									
									
									
									
								
							
							
						
						
									
										76
									
								
								pages.json
									
									
									
									
									
								
							@ -82,6 +82,80 @@
 | 
				
			|||||||
				}
 | 
									}
 | 
				
			||||||
			]
 | 
								]
 | 
				
			||||||
		},
 | 
							},
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								"root": "pageC",
 | 
				
			||||||
 | 
								"pages": [
 | 
				
			||||||
 | 
									{
 | 
				
			||||||
 | 
										"path": "classify/index",
 | 
				
			||||||
 | 
										"style": {
 | 
				
			||||||
 | 
											"app-plus": {
 | 
				
			||||||
 | 
												"titleNView": {
 | 
				
			||||||
 | 
													"titleColor": "#333333",
 | 
				
			||||||
 | 
													"backgroundColor": "#FFFFFF",
 | 
				
			||||||
 | 
													"buttons": [
 | 
				
			||||||
 | 
														{  
 | 
				
			||||||
 | 
															"type":"none",
 | 
				
			||||||
 | 
															"text":"搜索",
 | 
				
			||||||
 | 
															"float":"right",
 | 
				
			||||||
 | 
															"fontSize":"16"
 | 
				
			||||||
 | 
														},
 | 
				
			||||||
 | 
														{  
 | 
				
			||||||
 | 
															"type":"none",
 | 
				
			||||||
 | 
															"text":"\ue582",
 | 
				
			||||||
 | 
															"float":"left",
 | 
				
			||||||
 | 
															"fontSize":"16"
 | 
				
			||||||
 | 
														}
 | 
				
			||||||
 | 
													],
 | 
				
			||||||
 | 
													"searchInput": {
 | 
				
			||||||
 | 
														"align": "left",
 | 
				
			||||||
 | 
														"borderRadius": "15px",
 | 
				
			||||||
 | 
														"placeholder": "搜索您需要的商品",
 | 
				
			||||||
 | 
														"backgroundColor": "rgb(236,236,236)",
 | 
				
			||||||
 | 
														"disabled": true
 | 
				
			||||||
 | 
													}
 | 
				
			||||||
 | 
												}
 | 
				
			||||||
 | 
											}
 | 
				
			||||||
 | 
										}
 | 
				
			||||||
 | 
									
 | 
				
			||||||
 | 
									},
 | 
				
			||||||
 | 
									{
 | 
				
			||||||
 | 
										"path": "cart/index",
 | 
				
			||||||
 | 
										"style": {
 | 
				
			||||||
 | 
											"navigationBarTitleText": "购物车",
 | 
				
			||||||
 | 
											"app-plus": {
 | 
				
			||||||
 | 
												"titleSize": "36px",
 | 
				
			||||||
 | 
												"titleNView": {
 | 
				
			||||||
 | 
													"titleColor": "#333333",
 | 
				
			||||||
 | 
													"backgroundColor": "#FFFFFF",
 | 
				
			||||||
 | 
													"buttons": [
 | 
				
			||||||
 | 
														{  
 | 
				
			||||||
 | 
															"type":"none",
 | 
				
			||||||
 | 
															"text":"编辑",
 | 
				
			||||||
 | 
															"float":"right",
 | 
				
			||||||
 | 
															"fontSize":"14"
 | 
				
			||||||
 | 
														}
 | 
				
			||||||
 | 
													]
 | 
				
			||||||
 | 
												}
 | 
				
			||||||
 | 
											}
 | 
				
			||||||
 | 
										}
 | 
				
			||||||
 | 
									
 | 
				
			||||||
 | 
									},
 | 
				
			||||||
 | 
									{
 | 
				
			||||||
 | 
										"path": "cart/ConfirmOrder",
 | 
				
			||||||
 | 
										"style": {
 | 
				
			||||||
 | 
											"navigationBarTitleText": "确认订单",
 | 
				
			||||||
 | 
											"app-plus": {
 | 
				
			||||||
 | 
												"titleSize": "36px",
 | 
				
			||||||
 | 
												"titleNView": {
 | 
				
			||||||
 | 
													"titleColor": "#333333",
 | 
				
			||||||
 | 
													"backgroundColor": "#FFFFFF"
 | 
				
			||||||
 | 
												}
 | 
				
			||||||
 | 
											}
 | 
				
			||||||
 | 
										}
 | 
				
			||||||
 | 
									
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
								]
 | 
				
			||||||
 | 
							},
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			"root": "pageE",
 | 
								"root": "pageE",
 | 
				
			||||||
			"pages":[
 | 
								"pages":[
 | 
				
			||||||
@ -560,7 +634,7 @@
 | 
				
			|||||||
			"selectedIconPath": "static/image/home2.png",
 | 
								"selectedIconPath": "static/image/home2.png",
 | 
				
			||||||
			"text": "首页"
 | 
								"text": "首页"
 | 
				
			||||||
		}, {
 | 
							}, {
 | 
				
			||||||
			"pagePath": "pages/API/index",
 | 
								"pagePath": "pageC/classify/index",
 | 
				
			||||||
			"iconPath": "static/image/mall.png",
 | 
								"iconPath": "static/image/mall.png",
 | 
				
			||||||
			"selectedIconPath": "static/image/mall2.png",
 | 
								"selectedIconPath": "static/image/mall2.png",
 | 
				
			||||||
			"text": "商城"
 | 
								"text": "商城"
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										1087
									
								
								static/js/classify.data.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1087
									
								
								static/js/classify.data.js
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user