liujiaxin 2 주 전
부모
커밋
1ccaaee1aa
65개의 변경된 파일1374개의 추가작업 그리고 728개의 파일을 삭제
  1. BIN
      __MACOSX/components/._.DS_Store
  2. BIN
      components/.DS_Store
  3. 200 0
      components/EtherealWheat-banner/specialBanner.vue
  4. 329 0
      components/ThreeDSwiper.vue
  5. 0 192
      components/waterfall-card/waterfall-card.vue
  6. 368 246
      pages/home/livingno.vue
  7. 406 184
      pages/home/livingyes.vue
  8. 58 58
      pages/list/index.vue
  9. 3 1
      pages_shop/order.vue
  10. BIN
      static/images/red_card.png
  11. 0 1
      unpackage/dist/dev/mp-weixin/api/home.js
  12. 0 0
      unpackage/dist/dev/mp-weixin/api/live.js
  13. 0 0
      unpackage/dist/dev/mp-weixin/common/assets.js
  14. 1 1
      unpackage/dist/dev/mp-weixin/common/vendor.js
  15. 0 0
      unpackage/dist/dev/mp-weixin/components/ThreeDSwiper.js
  16. 0 0
      unpackage/dist/dev/mp-weixin/components/ThreeDSwiper.json
  17. 1 0
      unpackage/dist/dev/mp-weixin/components/ThreeDSwiper.wxml
  18. 1 0
      unpackage/dist/dev/mp-weixin/components/ThreeDSwiper.wxss
  19. 1 1
      unpackage/dist/dev/mp-weixin/pages/auth/h5WxLogin.js
  20. 1 1
      unpackage/dist/dev/mp-weixin/pages/auth/loginIndex.js
  21. 0 0
      unpackage/dist/dev/mp-weixin/pages/home/living.js
  22. 1 3
      unpackage/dist/dev/mp-weixin/pages/home/living.json
  23. 0 0
      unpackage/dist/dev/mp-weixin/pages/home/living.wxml
  24. 0 0
      unpackage/dist/dev/mp-weixin/pages/home/living.wxss
  25. 0 0
      unpackage/dist/dev/mp-weixin/pages/list/index.js
  26. 0 0
      unpackage/dist/dev/mp-weixin/pages_shop/cart.js
  27. 0 0
      unpackage/dist/dev/mp-weixin/pages_shop/confirmCreateOrder.js
  28. 0 0
      unpackage/dist/dev/mp-weixin/pages_shop/confirmPackageOrder.js
  29. 0 0
      unpackage/dist/dev/mp-weixin/pages_shop/goods.js
  30. 0 0
      unpackage/dist/dev/mp-weixin/pages_shop/order.js
  31. 0 0
      unpackage/dist/dev/mp-weixin/pages_shop/paymentOrder.js
  32. 0 0
      unpackage/dist/dev/mp-weixin/pages_shop/refundOrder.js
  33. 0 0
      unpackage/dist/dev/mp-weixin/pages_shop/store.js
  34. 0 0
      unpackage/dist/dev/mp-weixin/pages_shop/storeOrder.js
  35. 1 1
      unpackage/dist/dev/mp-weixin/pages_shop/storeOrderDelivery.js
  36. 0 0
      unpackage/dist/dev/mp-weixin/pages_shop/storeOrderRefundSubmit.js
  37. 1 1
      unpackage/dist/dev/mp-weixin/pages_shop/success.js
  38. 0 0
      unpackage/dist/dev/mp-weixin/pages_user/addAddress.js
  39. 1 1
      unpackage/dist/dev/mp-weixin/pages_user/address.js
  40. BIN
      unpackage/dist/dev/mp-weixin/static/images/red_card.png
  41. 0 1
      unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-avatar/props.js
  42. 0 0
      unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-avatar/u-avatar.js
  43. 0 7
      unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-avatar/u-avatar.json
  44. 0 1
      unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-avatar/u-avatar.wxml
  45. 0 1
      unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-avatar/u-avatar.wxss
  46. 0 0
      unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-input/props.js
  47. 0 0
      unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-input/u-input.js
  48. 0 6
      unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-input/u-input.json
  49. 0 1
      unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-input/u-input.wxml
  50. 0 1
      unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-input/u-input.wxss
  51. 0 1
      unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-link/props.js
  52. 0 1
      unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-link/u-link.js
  53. 0 1
      unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-link/u-link.wxml
  54. 0 1
      unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-link/u-link.wxss
  55. 0 1
      unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-text/props.js
  56. 0 0
      unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-text/u-text.js
  57. 0 7
      unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-text/u-text.json
  58. 0 1
      unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-text/u-text.wxml
  59. 0 1
      unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-text/u-text.wxss
  60. 0 1
      unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-text/value.js
  61. 1 1
      unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/libs/function/digit.js
  62. 0 0
      unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/libs/function/index.js
  63. 0 1
      unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/libs/mixin/button.js
  64. 0 1
      unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/libs/mixin/openType.js
  65. 0 1
      unpackage/dist/dev/mp-weixin/utils/liveWS.js

BIN
__MACOSX/components/._.DS_Store


BIN
components/.DS_Store


+ 200 - 0
components/EtherealWheat-banner/specialBanner.vue

@@ -0,0 +1,200 @@
+<template>
+  <div class="banner-container">
+    <swiper :style="{width: '100vw', height: '410rpx'}" 
+      :indicator-dots="swiperConfig.indicatorDots" 
+      :indicator-color="swiperConfig.indicatorColor" 
+      :indicator-active-color="swiperConfig.indicatorActiveColor"
+      :autoplay="swiperConfig.autoplay" 
+      :interval="swiperConfig.interval" 
+      :duration="swiperConfig.duration" 
+      :circular="swiperConfig.circular"
+      :previous-margin="swiperConfig.previousMargin"
+      :next-margin="swiperConfig.nextMargin"
+      @change="swiperChange" 
+      @animationfinish="animationfinish">
+      <swiper-item v-for="(item, i) in bannerList" :key="i">
+		<!-- 1.当前展示为第1项时,bannerList最后一项和第二项的justifyContent值分别为flex-end和flex-start,其余项值为center -->
+		<!-- 2.当前展示为最后一项时,bannerList倒数第2项和第1项的justifyContent值分别为flex-end和flex-start,其余项值为center -->
+		<!-- 3.当前展示为其他项(非第1和最后1项)时,bannerList当前项的前1项和后1项的justifyContent值分别为flex-end和flex-start,其余项值为center -->
+		<!-- 4.padding值也需要根据不同项设定不同值,但理同justifyContent -->
+        <div class="image-container" 
+			:class="[curIndex===0?((i===listLen-1)?'item-left':(i===1?'item-right':'item-center')):(curIndex===listLen-1?(i===0?'item-right':(i===listLen-2?'item-left':'item-center')):(i===curIndex-1?'item-left':(i===curIndex+1?'item-right':'item-center')))]">
+          <image :src="item.picture" 
+            class="slide-image" 
+            :style="{
+              transform: curIndex===i?'scale(' + scaleX + ',' + scaleY + ')':'scale(1,1)',
+              transitionDuration: '.3s',
+              transitionTimingFunction: 'ease'
+            }" 
+            @click="getBannerDetail(i)"/>
+        </div>
+      </swiper-item>
+    </swiper>
+    <div class="desc-wrap" :class="[isDescAnimating?'hideAndShowDesc':'']">
+      <div class="title">{{bannerList[descIndex].title}}</div>
+      <div class="desc">{{bannerList[descIndex].description}}</div>
+    </div>
+  </div>
+</template>
+<script>
+export default {
+  props: {
+	bannerList: {
+		type: Array,
+		default () {
+			return []
+		}
+	},
+	swiperConfig: {
+		type: Object,
+		default () {
+			return {
+				indicatorDots: true,
+				indicatorColor: 'rgba(255, 255, 255, .4)',
+				indicatorActiveColor: 'rgba(255, 255, 255, 1)',
+				autoplay: false,
+				interval: 3000,
+				duration: 300,
+				circular: true,
+				previousMargin: '58rpx',
+				nextMargin: '58rpx'
+			}
+		}
+	},
+	scaleX: {
+		type: String,
+		default: (634 / 550).toFixed(4)
+	},
+	scaleY: {
+		type: String,
+		default: (378 / 328).toFixed(4)
+	}
+  },
+  computed:{
+	listLen () {
+		return this.bannerList.length
+	}
+  },
+  data () {
+    return {
+      curIndex: 0,
+      descIndex: 0,
+      isDescAnimating: false
+    }
+  },
+  methods: {
+    swiperChange (e) {
+      const that = this
+      this.curIndex = e.mp.detail.current
+      this.isDescAnimating = true
+      let timer = setTimeout(function () {
+        that.descIndex = e.mp.detail.current
+        clearTimeout(timer)
+      }, 150)
+    },
+    animationfinish (e) {
+      this.isDescAnimating = false
+    },
+    getBannerDetail (index) {
+	  uni.showLoading({
+		title: '将前往详情页面',
+		duration: 2000,
+		mask: true
+	  })
+    }
+  }
+}
+</script>
+<style lang="scss" scoped>
+.banner-container {
+  width: 100vw;
+  height: 524rpx;
+  .image-container {
+	box-sizing: border-box;
+	width: 100%;
+	height: 100%;
+	display: flex;
+	.slide-image {
+	  width: 550rpx;
+	  height: 328rpx;
+	  z-index: 200;
+	}
+  }
+  .item-left {
+	justify-content: flex-end;
+	padding: 56rpx 26rpx 0 0;
+  }
+  .item-right {
+	justify-content: flex-start;
+	padding: 56rpx 0 0 26rpx;
+  }
+  .item-center {
+	justify-content: center;
+	padding: 56rpx 0 0 0;
+  }
+  .desc-wrap {
+    box-sizing: border-box;
+    width: 100%;
+    height: 98rpx;
+    padding: 24rpx 66rpx 0;
+    .title {
+      width: 100%;
+      height: 42rpx;
+      line-height: 42rpx;
+      color: #222222;
+      font-size: 30rpx;
+      font-family: 'PingFangTC-Regular';
+      font-weight: 600;
+      text-align: left;
+    }
+    .desc {
+      margin-top: 4rpx;
+      width: 100%;
+      height: 34rpx;
+      line-height: 34rpx;
+      color: #999999;
+      font-size: 24rpx;
+      font-family: 'PingFangTC-Regular';
+      text-align: left;
+    }
+  }
+  @keyframes descAnimation {
+    0% {
+      opacity: 1;
+    }
+    25% {
+      opacity: .5;
+    }
+    50% {
+      opacity: 0;
+    }
+    75% {
+      opacity: .5;
+    }
+    100% {
+      opacity: 1;
+    }
+  }
+  @-webkit-keyframes descAnimation {
+    0% {
+      opacity: 1;
+    }
+    25% {
+      opacity: .5;
+    }
+    50% {
+      opacity: 0;
+    }
+    75% {
+      opacity: .5;
+    }
+    100% {
+      opacity: 1;
+    }
+  }
+  .hideAndShowDesc {
+    animation: descAnimation .3s ease 1;
+    -webkit-animation: descAnimation .3s ease 1;
+  }
+}
+</style>

+ 329 - 0
components/ThreeDSwiper.vue

@@ -0,0 +1,329 @@
+<template>
+  <view class="three-item-swiper">
+    <!-- 轮播容器 -->
+    <view class="swiper-container" :style="{ height: containerHeight + 'px' }">
+      <view class="swiper-wrapper" 
+            :style="{ 
+              transform: `translateX(${translateX}px)`,
+              transition: isAnimating ? 'transform 0.3s ease-out' : 'none'
+            }">
+        <!-- 轮播项 -->
+        <view class="swiper-item" 
+              v-for="(item, index) in items" 
+              :key="index"
+              :style="getItemStyle(index)">
+          <image :src="item.imgUrl" mode="cover" class="item-image" :alt="item.title"></image>
+          <view class="item-title" v-if="item.title">{{ item.title }}</view>
+        </view>
+      </view>
+    </view>
+
+    <!-- 指示点 -->
+    <view class="indicators">
+      <view class="indicator"
+            v-for="(item, index) in items"
+            :key="index"
+            :class="{ active: index === currentIndex }"
+            @click="switchTo(index)"></view>
+    </view>
+  </view>
+</template>
+
+<script>
+export default {
+  props: {
+    // 轮播数据
+    items: {
+      type: Array,
+      required: true,
+      default: () => []
+    },
+    // 容器高度(px)
+    containerHeight: {
+      type: Number,
+      default: 400
+    },
+    // 自动轮播间隔(ms),0为不自动轮播
+    autoPlay: {
+      type: Number,
+      default: 3000
+    },
+    // 中间项放大比例
+    scaleRatio: {
+      type: Number,
+      default: 1.2
+    }
+  },
+  data() {
+    return {
+      currentIndex: 0,       // 当前居中索引
+      startX: 0,             // 触摸起始X
+      moveX: 0,              // 移动X
+      translateX: 0,         // 容器偏移量
+      itemWidth: 0,          // 项宽度
+      isAnimating: false,    // 是否动画中
+      isDragging: false,     // 是否拖拽中
+      timer: null            // 自动播放定时器
+    };
+  },
+  watch: {
+    items() {
+      this.currentIndex = 0;
+      this.$nextTick(() => {
+        this.calculateLayout();
+      });
+      this.resetAutoPlay();
+    },
+    currentIndex() {
+      this.updatePosition(true);
+    },
+    autoPlay() {
+      this.resetAutoPlay();
+    }
+  },
+  mounted() {
+    // 初始化布局
+    this.$nextTick(() => {
+      this.calculateLayout();
+    });
+    
+    // 监听窗口尺寸变化
+    uni.onWindowResize(() => {
+      this.$nextTick(() => {
+        this.calculateLayout();
+      });
+    });
+    
+    // 初始化自动播放
+    this.initAutoPlay();
+  },
+  beforeDestroy() {
+    this.clearTimer();
+    uni.offWindowResize();
+  },
+  methods: {
+    // 计算布局
+    calculateLayout() {
+      // 获取容器宽度
+      const query = uni.createSelectorQuery().in(this);
+      query.select('.swiper-container').boundingClientRect(data => {
+        if (data) {
+          // 计算每个项的宽度(容器的一半)
+          this.itemWidth = data.width / 2;
+          this.updatePosition(false);
+        }
+      }).exec();
+    },
+    
+    // 更新位置
+    updatePosition(animate = true) {
+      if (!this.itemWidth) return;
+      
+      this.isAnimating = animate;
+      // 计算偏移量,让当前项居中
+      this.translateX = this.itemWidth - this.currentIndex * this.itemWidth;
+    },
+    
+    // 获取每个项的样式
+    getItemStyle(index) {
+      if (!this.itemWidth) return {};
+      
+      // 计算与当前项的距离
+      const distance = Math.abs(index - this.currentIndex);
+      let scale = 1;
+      let zIndex = 1;
+      let opacity = 0.8;
+      
+      // 中间项放大
+      if (distance === 0) {
+        scale = this.scaleRatio;
+        zIndex = 10;
+        opacity = 1;
+      }
+      
+      return {
+        width: `${this.itemWidth}px`,
+        transform: `scale(${scale})`,
+        zIndex,
+        opacity,
+        transition: this.isAnimating ? 'all 0.3s ease-out' : 'none'
+      };
+    },
+    
+    // 触摸开始
+    handleTouchStart(e) {
+      if (this.items.length <= 1) return;
+      
+      this.isDragging = true;
+      this.isAnimating = false;
+      this.startX = e.touches[0].clientX;
+      this.clearTimer(); // 停止自动播放
+    },
+    
+    // 触摸移动
+    handleTouchMove(e) {
+      if (!this.isDragging || this.items.length <= 1) return;
+      
+      this.moveX = e.touches[0].clientX;
+      const diffX = this.moveX - this.startX;
+      
+      // 计算临时偏移量(增加阻力感)
+      this.translateX = (this.itemWidth - this.currentIndex * this.itemWidth) + diffX * 0.8;
+    },
+    
+    // 触摸结束
+    handleTouchEnd() {
+      if (!this.isDragging || this.items.length <= 1) return;
+      
+      this.isDragging = false;
+      const diffX = this.moveX - this.startX;
+      const threshold = this.itemWidth / 3; // 滑动阈值
+      
+      // 判断滑动方向
+      if (diffX > threshold) {
+        // 向右滑动,上一项
+        this.prev();
+      } else if (diffX < -threshold) {
+        // 向左滑动,下一项
+        this.next();
+      } else {
+        // 未达到阈值,回弹
+        this.updatePosition(true);
+      }
+      
+      this.resetAutoPlay(); // 恢复自动播放
+    },
+    
+    // 下一项
+    next() {
+      if (this.currentIndex >= this.items.length - 1) {
+        this.currentIndex = 0; // 循环到第一项
+      } else {
+        this.currentIndex++;
+      }
+    },
+    
+    // 上一项
+    prev() {
+      if (this.currentIndex <= 0) {
+        this.currentIndex = this.items.length - 1; // 循环到最后一项
+      } else {
+        this.currentIndex--;
+      }
+    },
+    
+    // 切换到指定索引
+    switchTo(index) {
+      if (index === this.currentIndex) return;
+      this.currentIndex = index;
+      this.resetAutoPlay();
+    },
+    
+    // 初始化自动播放
+    initAutoPlay() {
+      if (this.autoPlay > 0 && this.items.length > 1) {
+        this.timer = setInterval(() => {
+          this.next();
+        }, this.autoPlay);
+      }
+    },
+    
+    // 重置自动播放
+    resetAutoPlay() {
+      this.clearTimer();
+      this.initAutoPlay();
+    },
+    
+    // 清除定时器
+    clearTimer() {
+      if (this.timer) {
+        clearInterval(this.timer);
+        this.timer = null;
+      }
+    }
+  }
+};
+</script>
+
+<style scoped>
+.three-item-swiper {
+  position: relative;
+  width: 100%;
+  overflow: hidden;
+}
+
+/* 轮播容器 */
+.swiper-container {
+  position: relative;
+  width: 100%;
+  overflow: hidden;
+}
+
+/* 轮播轨道 */
+.swiper-wrapper {
+  position: absolute;
+  top: 0;
+  left: 0;
+  height: 100%;
+  display: flex;
+}
+
+/* 轮播项 */
+.swiper-item {
+  height: 100%;
+  flex-shrink: 0;
+  display: flex;
+  flex-direction: column;
+  align-items: center;
+  justify-content: center;
+  position: relative;
+}
+
+/* 图片样式 */
+.item-image {
+  width: 100%;
+  height: 100%;
+  border-radius: 16rpx;
+  box-shadow: 0 10rpx 30rpx rgba(0, 0, 0, 0.2);
+}
+
+/* 标题样式 */
+.item-title {
+  position: absolute;
+  bottom: 20rpx;
+  left: 0;
+  right: 0;
+  text-align: center;
+  color: #fff;
+  font-size: 32rpx;
+  text-shadow: 0 2rpx 4rpx rgba(0, 0, 0, 0.5);
+  padding: 0 20rpx;
+  white-space: nowrap;
+  overflow: hidden;
+  text-overflow: ellipsis;
+}
+
+/* 指示点容器 */
+.indicators {
+  display: flex;
+  justify-content: center;
+  gap: 12rpx;
+  padding: 20rpx 0;
+}
+
+/* 指示点样式 */
+.indicator {
+  width: 16rpx;
+  height: 16rpx;
+  border-radius: 50%;
+  background-color: #ddd;
+  transition: all 0.3s ease;
+}
+
+/* 激活状态指示点 */
+.indicator.active {
+  width: 40rpx;
+  border-radius: 8rpx;
+  background-color: #007aff;
+}
+</style>

+ 0 - 192
components/waterfall-card/waterfall-card.vue

@@ -1,192 +0,0 @@
-<template>
-	<view class="waterfall">
-		<view class="left" v-if="leftList[0]">
-			<view v-for="(item, index) in leftList" :key="index" @click="emits('click',item)">
-				<u-transition :show="true" mode="fade-left" :duration="transitionIndex">
-					<view class="waterfall-item" :style="{backgroundColor: bgColor}">
-						<view class="tags">{{item.city}}</view>
-						<image :src="item.cover" mode="widthFix" lazy-load @load="onImageLoad">
-						</image>
-						<view class="mt20 column">
-							<view class="align-center" v-if="item.user">
-								<u-avatar :src="item.user.head_img" size="48rpx"></u-avatar>
-								<text class="ellipsis ml10 fs28 bold">{{item.user.nickname}}</text>
-							</view>
-							<view class="column mt10">
-								<text class="bold mb10 ellipsis">{{item.title}}</text>
-								<text class="base-color-gray ellipsis lines-2">{{item.content}}</text>
-							</view>
-							<view class="align-center mt20" @click.stop.prevent>
-								<view class="align-center" @click="emits('onLike',item)">
-									<u-icon :name="item.is_collent==1?'heart-fill':'heart'"
-										:color="item.is_collent==1?'#f44':''"></u-icon>
-									<text class="ml10" :style="{color:item.is_collent==1?'#f44':''}">{{item.like_num}}</text>
-								</view>
-								<view class="align-center ml30">
-									<u-icon name="eye"></u-icon>
-									<text class="ml10">{{item.browse_num}}</text>
-								</view>
-							</view>
-						</view>
-					</view>
-				</u-transition>
-			</view>
-		</view>
-		<view class="right" v-if="rightList[0]">
-			<view v-for="(item, index) in rightList" :key="index" @click="emits('click',item)">
-				<u-transition :show="true" mode="fade-right" :duration="transitionIndex">
-					<view class="waterfall-item" :style="{backgroundColor: bgColor}">
-						<view class="tags">{{item.city}}</view>
-						<image :src="item.cover" mode="widthFix" lazy-load @load="onImageLoad">
-						</image>
-						<view class="mt20 column">
-							<view class="align-center" v-if="item.user">
-								<u-avatar :src="item.user.head_img" size="48rpx"></u-avatar>
-								<text class="ellipsis ml10 fs28 bold">{{item.user.nickname}}</text>
-							</view>
-							<view class="column mt10">
-								<text class="bold mb10 ellipsis">{{item.title}}</text>
-								<text class="base-color-gray ellipsis lines-2">{{item.content}}</text>
-							</view>
-							<view class="align-center mt20" @click.stop.prevent>
-								<view class="align-center" @click="emits('onLike',item)">
-									<u-icon :name="item.is_collent==1?'heart-fill':'heart'"
-										:color="item.is_collent==1?'#f44':''"></u-icon>
-									<text class="ml10" :style="{color:item.is_collent==1?'#f44':''}">{{item.like_num}}</text>
-								</view>
-								<view class="align-center ml30">
-									<u-icon name="eye"></u-icon>
-									<text class="ml10">{{item.browse_num}}</text>
-								</view>
-							</view>
-						</view>
-					</view>
-				</u-transition>
-			</view>
-		</view>
-	</view>
-</template>
-<script setup>
-	import {
-		watch
-	} from 'vue';
-	name: 'waterfall-card'
-	import {
-		onLoad,
-	} from "@dcloudio/uni-app";
-	import {
-		ref
-	} from "vue";
-	const emits = defineEmits(['click', 'onLike'])
-	const props = defineProps({
-		list: {
-			type: Array,
-			default: () => []
-		},
-		bgColor: {
-			type: String,
-			default: '#fff'
-		}
-	})
-	const transitionIndex = ref(100) //动画延时
-	const leftList = ref([]) //左边列表
-	const rightList = ref([]) //右边列表
-	const itemIndex = ref(0)
-	const leftHeight = ref(0)
-	const rightHeight = ref(0)
-	//第一张图片入栈
-	leftList.value = [props.list[0]];
-	watch(() => props.list, (n, o) => {
-		// console.log('=====watch  list=====', n, o);
-		let ol = o.length;
-		let nl = n.length;
-		// console.log(ol);
-		if (nl > ol) {
-			if (leftHeight.value > rightHeight.value) {
-				rightList.value.push(props.list[ol]);
-			} else {
-				leftList.value.push(props.list[ol]);
-			}
-			onImageLoad();
-		}
-	})
-	const onImageLoad = (e) => {
-		props.list.forEach((item, index) => {
-			let i = index
-			transitionIndex.value = (i + 1) * 30
-			if (i > 10) i = 0
-		})
-		if (!e) {
-			// console.log('无图片!!!!');
-			return;
-		}
-		let imgH = (e.detail.height / e.detail.width) * 345 + 110 + 20; //图片显示高度加上下面的文字的高度110rpx,加上margin-bottom20rpx
-		if (itemIndex.value === 0) {
-			leftHeight.value += imgH; //第一张图片高度加到左边
-			itemIndex.value++;
-			rightList.value.push(props.list[itemIndex.value]); //第二张图片先入栈
-		} else {
-			itemIndex.value++;
-			//再加高度
-			if (leftHeight.value > rightHeight.value) {
-				rightHeight.value += imgH;
-			} else {
-				leftHeight.value += imgH;
-			}
-			if (itemIndex.value < props.list.length) {
-				//下一张图片入栈
-				if (leftHeight.value > rightHeight.value) {
-					rightList.value.push(props.list[itemIndex.value]);
-				} else {
-					leftList.value.push(props.list[itemIndex.value]);
-				}
-			}
-		}
-	}
-</script>
-
-
-<style lang="scss">
-	.waterfall {
-		width: 100%;
-		display: grid;
-		grid-template-columns: 1fr 1fr;
-		grid-gap: 20rpx;
-
-		.left,
-		.right {
-			.waterfall-item {
-				width: 100%;
-				margin-bottom: 20rpx;
-				box-sizing: border-box;
-				border-radius: 20rpx;
-				overflow: hidden;
-				font-size: 24rpx;
-				background: #fff;
-				padding: 30rpx 25rpx;
-				position: relative;
-
-				image {
-					width: 100%;
-					display: block;
-					border-radius: 10rpx;
-				}
-
-				.tags {
-					position: absolute;
-					top: 36rpx;
-					right: 37rpx;
-					width: 86rpx;
-					height: 33rpx;
-					line-height: 33rpx;
-					color: #fff;
-					background: rgba(255, 255, 255, .45);
-					z-index: 10;
-					border-radius: 20rpx;
-					text-align: center;
-					font-size: 22rpx
-				}
-			}
-		}
-	}
-</style>

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 368 - 246
pages/home/livingno.vue


+ 406 - 184
pages/home/living3.vue → pages/home/livingyes.vue

@@ -171,15 +171,15 @@
 							</view>
 						</view>
 					</view>
-					<u-popup :show="liveItem.goodsCard?.isShow" @close="!liveItem.goodsCard?.isShow" round='20rpx'
-						mode="center" bgColor='#ffffff'>
+					<u-popup :show="liveItem.goodsCard?.isShowGoods" @close="!liveItem.goodsCard?.isShowGoods"
+						round='20rpx' mode="center" bgColor='#ffffff'>
 						<view class="goods">
 							<view class="top">
 								<view class="left">
 									<image class="w30 h30 mr8" src="/static/images/signal.png"></image>讲解中
 								</view>
 								<image class="w30 h30" src="/static/images/close.png"
-									@click="liveItem.goodsCard.isShow=false"></image>
+									@click="liveItem.goodsCard.isShowGoods=false"></image>
 							</view>
 							<image class="photo" :src="liveItem.goodsCard?.imgUrl"></image>
 							<view class="item">
@@ -194,77 +194,8 @@
 					</u-popup>
 
 					<!-- 抽奖 -->
-					<u-popup :show="isShowLotteryPop" @close="!isShowLotteryPop" round='40rpx'>
-						<view class="prize-box" style="border-radius: 40rpx;height: fit-content;">
-							<image class="nav-img " src="/static/images/red_head.png" mode="widthFix"></image>
-							<image class="bg-img " src="/static/images/red_bg.png"></image>
-							<view class="prize-content">
-								<view class="u-flex-row-reverse u-flex mr20">
-									<u-icon name="close" color="#fff" size="20"
-										@click="isShowLotteryPop=false"></u-icon>
-								</view>
-								<view class="column align-center ">
-									<image class="w446 h80" src="/static/images/red_title.png"></image>
-									<view class="fs24 colorf u-flex-y-center mt30 mb30">
-										52人已参与,开奖倒计时
-										<view class="white-item">14</view>:
-										<view class="white-item">344</view>:
-										<view class="white-item">44</view>
-									</view>
-									<!-- 	<view class="item-group">
-										<view class="item" v-for="(item,index) in lotteryProducts" :key="index">
-											<image class="w280 h280" :src="item.imgUrl"></image>
-											<view v-show="true" class="title">{{item.prizeLevel}}等奖</view>
-											<view v-show="true" class="txt">{{item.productName}}</view>
-										</view>
-										<view class="item center">
-											<image class="w280 h280" src="/static/images/img.png"></image>
-											<view v-show="true" class="title">二等奖</view>
-											<view v-show="true" class="txt">新用户免费领礼品弹窗</view>
-										</view>
-
-										<view class="item">
-											<image class="w280 h280" src="/static/images/img.png"></image>
-											<view v-show="false" class="title">二等奖</view>
-											<view v-show="false" class="txt">新用户免费领礼品弹窗</view>
-										</view>
-									</view>
-									<view class="point-group"  v-for="(item,index) in lotteryProducts" :key="index">
-										<view class="item" v-if="item.length" :class="{ selected: activePointIndex === 0 }"
-											@click="activePointIndex = 0"></view>
-										<view class="item" :class="{ selected: activePointIndex === 1 }"
-											@click="() => { activePointIndex = 1; scrollToCenterItem() }"></view>
-										<view class="item" :class="{ selected: activePointIndex === 2 }"
-											@click="activePointIndex = 2"></view>
-									</view> -->
-
-
-									<swiper class="prize-swiper" :current="activePointIndex"
-										@change="onPrizeSwiperChange" :circular="false" :duration="300"
-										indicator-dots="false">
-										<swiper-item v-for="(product, idx) in lotteryProducts" :key="idx">
-											<view class="item" :class="{center: idx === 1}">
-												<image class="w280 h280" :src="product.imgUrl"></image>
-												<view class="title">{{product.prizeLevel}}等奖</view>
-												<view class="txt">{{product.productName}}</view>
-											</view>
-										</swiper-item>
-									</swiper>
-
-									<view class="point-group" v-if="lotteryProducts.length > 0">
-										<view class="item" v-for="(_, idx) in lotteryProducts" :key="idx"
-											:class="{ selected: activePointIndex === idx }"
-											@click="activePointIndex = idx"></view>
-									</view>
-
-									<view class="colorf  fs28">
-										观看直播参与抽奖
-									</view>
-									<view class="button" @click="">参与抽奖</view>
-								</view>
-							</view>
-						</view>
-					</u-popup>
+					<!--show="true" -->
+					
 
 					<u-popup :show="liveItem.integral?.status" @close="!liveItem.integral?.status" round='20rpx'
 						mode="center" bgColor='#ffffff'>
@@ -353,6 +284,59 @@
 							</scroll-view>
 						</view>
 					</u-popup>
+
+					<u-popup :show="isShowLotteryPop" @close="!isShowLotteryPop" round='40rpx'>
+						<view class="prize-box" style="border-radius: 40rpx;height: fit-content;">
+							<image class="nav-img " src="/static/images/red_head.png" mode="widthFix"></image>
+							<image class="bg-img " src="/static/images/red_bg.png"></image>
+							<view class="prize-content">
+								<view class="u-flex-row-reverse u-flex mr20">
+									<u-icon name="close" color="#fff" size="20"
+										@click="isShowLotteryPop=false"></u-icon>
+								</view>
+								<view class="column align-center ">
+									<image class="w446 h80" src="/static/images/red_title.png"></image>
+									<view class="fs24 colorf u-flex-y-center mt30 mb30">
+										52人已参与,开奖倒计时
+										<view class="white-item">14</view>:
+										<view class="white-item">344</view>:
+										<view class="white-item">44</view>
+									</view>
+									<view class="item-group">
+										<!-- <view class="item" v-for="(item,index) in lotteryProducts" :key="index">
+											<image class="w280 h280" :src="item.imgUrl"></image>
+											<view v-show="true" class="title">{{item.prizeLevel}}等奖</view>
+											<view v-show="true" class="txt">{{item.productName}}</view>
+										</view> -->
+										<view class="item center">
+											<image class="w280 h280" src="/static/images/img.png"></image>
+											<view v-show="true" class="title">二等奖</view>
+											<view v-show="true" class="txt">新用户免费领礼品弹窗</view>
+										</view>
+
+										<view class="item">
+											<image class="w280 h280" src="/static/images/img.png"></image>
+											<view v-show="false" class="title">二等奖</view>
+											<view v-show="false" class="txt">新用户免费领礼品弹窗</view>
+										</view>
+									</view>
+									<view class="point-group" v-for="(item,index) in lotteryProducts" :key="index">
+										<!-- <view class="item" v-if="item.length"
+											:class="{ selected: activePointIndex === 0 }" @click="activePointIndex = 0">
+										</view> -->
+										<!-- <view class="item" :class="{ selected: activePointIndex === 1 }"
+											@click="() => { activePointIndex = 1; scrollToCenterItem() }"></view>
+										<view class="item" :class="{ selected: activePointIndex === 2 }"
+											@click="activePointIndex = 2"></view> -->
+									</view>
+									<view class="colorf  fs28">
+										观看直播参与抽奖
+									</view>
+									<view class="button" @click="">参与抽奖</view>
+								</view>
+							</view>
+						</view>
+					</u-popup>
 				</view>
 			</swiper-item>
 		</swiper>
@@ -413,17 +397,23 @@
 	export default {
 		data() {
 			return {
+
 				lotteryProducts: [],
 
-				activePointIndex: 0,
+				activePointIndex: 1,
 
 				lotteryTimer: null,
 				redTimer: null,
 
+				// 抽奖
 				isShowLotteryPop: false,
 				isShowLottery: false,
 				isShowRed: false,
-				// 新增:滑动节流相关变量
+				lotteryProducts: [],
+				activePointIndex: 1,
+				lotteryTimer: null,
+				
+				// 滑动节流相关变量
 				lastSwiperChangeTime: 0, // 上次切换时间戳
 				swiperChangeThrottle: 300, // 切换节流阈值(毫秒)
 
@@ -616,12 +606,8 @@
 			}
 		},
 		methods: {
-			onPrizeSwiperChange(e) {
-				// 同步指示点与轮播当前索引
-				this.activePointIndex = e.detail.current;
-			},
-
-
+			
+			
 			scrollToCenterItem() {
 				this.$nextTick(() => { // 确保DOM渲染完成后再获取位置
 					// 1. 获取父容器(item-group)的DOM信息
@@ -691,9 +677,15 @@
 							this.$set(liveItem, 'goodsCard', res.goods);
 							// 红包
 							this.$set(liveItem, 'redInfo', res.red[0]);
-							this.isShowRed = true
 							// 抽奖
 							this.$set(liveItem, 'lotteryInfo', res.lottery[0]);
+							if (liveItem.goodsCard) {
+								this.isShowGoods = true
+							}
+							if (liveItem.redInfo) {
+								this.isShowRed = true
+							}
+
 						} else {
 							uni.showToast({
 								title: res.msg,
@@ -1893,6 +1885,7 @@
 						});
 					} else if (socketMessage.cmd == 'goods') {
 						this.$set(liveItem, 'goodsCard', JSON.parse(socketMessage.data));
+						this.isShowGoods = true
 					}
 				} else {
 					uni.showToast({
@@ -2271,7 +2264,126 @@
 			}
 		}
 
-		
+		.content-top {
+			width: 100%;
+			margin-top: 68rpx;
+			display: flex;
+			justify-content: space-between;
+			padding: 0 24rpx;
+			box-sizing: border-box;
+
+
+
+			.sum {
+				width: 80rpx;
+				height: 52rpx;
+				background: rgba(0, 0, 0, 0.5);
+				border-radius: 26rpx 26rpx 26rpx 26rpx;
+				font-size: 24rpx;
+				color: #FFFFFF;
+				text-align: center;
+				line-height: 52rpx;
+
+			}
+		}
+
+		.follow-btn {
+			padding: 8rpx 16rpx;
+			background: linear-gradient(270deg, #FF5C03 0%, #FFAC64 100%);
+			border-radius: 26rpx;
+			font-weight: 500;
+			font-size: 26rpx;
+			color: #FFFFFF;
+		}
+	}
+
+	.input-box {
+		position: fixed;
+		bottom: 20rpx;
+
+	}
+
+	.videolist {
+		position: relative;
+
+		.video {
+			height: 100vh;
+			/* 占屏幕高度的80% */
+			width: 100%;
+			background-color: rgba(57, 57, 57, 0.4);
+
+			.time {
+				color: #ffffff;
+				font-size: 20rpx;
+				margin-left: 10rpx;
+			}
+
+			.videotop {
+				width: 100%;
+				height: 100%;
+			}
+
+			.video_row {
+				width: 100%;
+				max-height: 500rpx;
+				overflow: hidden;
+				margin-top: 360rpx;
+			}
+		}
+
+	}
+
+	.integral-box {
+		width: 300rpx;
+		display: flex;
+		flex-direction: column;
+		align-items: center;
+		border-radius: 20rpx;
+		overflow: hidden;
+
+
+		.top {
+			width: 100%;
+			position: relative;
+
+			.title {
+				width: 100%;
+				font-weight: 600;
+				font-size: 30rpx;
+				color: #FFFFFF;
+				text-shadow: 0px 4px 8px rgba(255, 89, 2, 0.8);
+				position: absolute;
+				top: 30rpx;
+				text-align: center;
+			}
+
+			.photo {
+				width: 100%;
+
+			}
+		}
+
+		.item {
+			padding: 20rpx;
+
+			.title {
+				font-weight: 500;
+				font-size: 30rpx;
+				text-align: center;
+			}
+
+			.button {
+				margin-top: 20rpx;
+				background: linear-gradient(270deg, #ff4702 0%, #fe6304 100%);
+				color: #fff;
+				text-align: center;
+				padding: 16rpx 30rpx;
+				border-radius: 10rpx;
+				font-weight: 500;
+			}
+		}
+	}
+
 	.goods {
 		position: fixed;
 		// bottom: 160rpx;
@@ -2353,6 +2465,98 @@
 
 	}
 
+	.icon-bg {
+		background-color: rgba(57, 57, 57, 0.8);
+		border-radius: 50%;
+		width: 88rpx;
+		height: 88rpx;
+		display: flex;
+		justify-content: center;
+		align-items: center;
+		transition: transform 0.2s ease;
+
+		.button {
+			background-color: transparent;
+			margin: 0;
+			line-height: 1;
+			padding: 0;
+		}
+	}
+
+	.list {
+		width: 80%;
+		margin-bottom: 20rpx;
+		animation: xxxawdawd .2s;
+	}
+
+	@keyframes xxxawdawd {
+		from {
+			margin-top: 0rpx;
+			opacity: 0;
+		}
+
+		to {
+			margin-top: 20rpx;
+			opacity: 1;
+		}
+	}
+
+	.shop-prompt {
+		position: absolute;
+		bottom: 600rpx;
+		left: 24rpx;
+		padding: 6rpx 20rpx;
+		background: rgba(230, 154, 34, 0.7);
+		border-radius: 24rpx;
+		z-index: 9;
+		font-weight: 500;
+		color: #FFFFFF;
+		transition: opacity 0.3s ease;
+	}
+
+
+
+	.red-box {
+		.button {
+			margin: 0 auto;
+			width: 80%;
+			line-height: 88rpx;
+			height: 88rpx;
+			background: linear-gradient(90deg, #FF5701 0%, #FFB501 100%);
+			box-shadow: 0rpx 8rpx 8rpx 0rpx rgba(238, 124, 80, 0.2);
+			border-radius: 44rpx 44rpx 44rpx 44rpx;
+			font-weight: 600;
+			font-size: 32rpx;
+			color: #FFFFFF;
+			text-align: center;
+		}
+	}
+
+	.view-box {
+		position: relative;
+		height: 40vh;
+		/* 设置弹出层高度为视窗高度的70% */
+		padding: 40rpx 0rpx 120rpx;
+		box-sizing: border-box;
+		display: flex;
+		flex-direction: column;
+
+		.scroll-content {
+			flex: 1;
+			overflow-y: auto;
+			padding: 0 40rpx;
+		}
+
+		.bottom {
+			padding: 20rpx 40rpx;
+			position: absolute;
+			bottom: 0;
+			width: 100%;
+			box-shadow: 0rpx -4rpx 10rpx 0rpx rgba(195, 195, 195, 0.3);
+			background: #fff;
+		}
+	}
+
 	// 抽奖
 	.prize-box {
 		position: relative;
@@ -2396,91 +2600,6 @@
 				line-height: 40rpx;
 			}
 
-			.prize-swiper {
-				width: 100%;
-				height: 400rpx;
-				margin: 20rpx 0;
-				overflow: visible;
-				/* 轮播项基础样式 */
-				.item {
-					flex-shrink: 0;
-					width: 348rpx;
-					height: 348rpx;
-					background: #FFFFFF;
-					box-shadow: 0rpx 12rpx 19rpx 2rpx rgba(219, 73, 22, 0.6);
-					border-radius: 24rpx;
-					border: 4rpx solid #FFCA96;
-					display: flex;
-					flex-direction: column;
-					align-items: center;
-					box-sizing: border-box;
-					padding: 20rpx 0;
-					margin: 0 auto;
-					transition: all 0.3s ease;
-				
-					&:not(.center) {
-						transform: scale(0.85);
-						z-index: 1;
-						opacity: 0.8;
-					}
-				
-					&.center {
-						width: 440rpx;
-						height: 450rpx;
-						transform: scale(1);
-						z-index: 2;
-						opacity: 1;
-						box-shadow: 0rpx 16rpx 24rpx 4rpx rgba(219, 73, 22, 0.8);
-						border-color: #FFEB66;
-					}
-				
-					.title {
-						font-weight: 500;
-						font-size: 32rpx;
-						color: #222222;
-						margin: 20rpx 0 10rpx;
-					}
-				
-					.txt {
-						font-size: 24rpx;
-						color: #757575;
-						text-align: center;
-						padding: 0 10rpx;
-					}
-				
-					image {
-						width: 220rpx;
-						height: 220rpx;
-						object-fit: cover;
-						border-radius: 16rpx;
-					}
-				}
-			}
-
-			
-
-			/* 5. 指示点样式优化 */
-			.point-group {
-				margin: 30rpx 0 50rpx;
-				display: flex;
-				gap: 12rpx;
-				justify-content: center;
-
-				.item {
-					width: 24rpx;
-					height: 8rpx;
-					background: rgba(255, 255, 255, 0.5);
-					border-radius: 4rpx;
-					transition: all 0.3s ease;
-
-					&.selected {
-						background: #FFEB66;
-					}
-				}
-			}
-
-
-
 			.item-group {
 				position: absolute;
 				top: 250rpx;
@@ -2530,22 +2649,22 @@
 				}
 			}
 
-			// .point-group {
-			// 	margin: 480rpx 0 50rpx;
-			// 	display: flex;
-			// 	gap: 6rpx;
+			.point-group {
+				margin: 480rpx 0 50rpx;
+				display: flex;
+				gap: 6rpx;
 
-			// 	.item {
-			// 		width: 20rpx;
-			// 		height: 8rpx;
-			// 		background: rgba(255, 255, 255, 0.5);
-			// 		border-radius: 4rpx 4rpx 4rpx 4rpx;
-			// 	}
+				.item {
+					width: 20rpx;
+					height: 8rpx;
+					background: rgba(255, 255, 255, 0.5);
+					border-radius: 4rpx 4rpx 4rpx 4rpx;
+				}
 
-			// 	.selected {
-			// 		background: #FFEB66;
-			// 	}
-			// }
+				.selected {
+					background: #FFEB66;
+				}
+			}
 
 			.button {
 				margin-top: 30rpx;
@@ -2596,8 +2715,111 @@
 		}
 
 
-		
+		.shop-list {
+			overflow: hidden;
+
+			.list-item {
+				display: flex;
+				align-items: center;
+				padding: 20rpx 16rpx;
+				background: #FFFFFF;
+				border-radius: 16rpx;
+				margin-bottom: 16rpx;
+
+				.goods-img {
+					width: 200rpx;
+					height: 200rpx;
+					border-radius: 16rpx;
+					overflow: hidden;
+					position: relative;
+					margin-right: 24rpx;
+
+					image {
+						width: 100%;
+						height: 100%;
+					}
+
+					.goods-label {
+						position: absolute;
+						top: 0;
+						width: 64rpx;
+						height: 40rpx;
+						background: rgba(0, 0, 0, 0.5);
+						border-radius: 16rpx 0rpx 16rpx 0rpx;
+						text-align: center;
+						font-weight: 500;
+						font-size: 28rpx;
+						color: #FFFFFF;
+					}
+				}
+
+				.goods-right {
+					flex: 1;
+
+					.goods-title {
+						font-weight: 500;
+						font-size: 30rpx;
+						color: #000000;
+						margin-bottom: 10rpx;
+
+					}
+
+					.goods-details {
+						font-size: 24rpx;
+						color: #999999;
+						margin: 10rpx 0 20rpx;
+					}
+
+					.goods-people {
+						font-size: 22rpx;
+						color: #E69A22;
+						height: 56rpx;
+					}
+
+					.goods-shop {
+						display: flex;
+						justify-content: space-between;
+
+						.nummber {
+							color: #FF5C03;
+							font-size: 22rpx;
+							font-weight: 500;
+						}
+
+						.btn-group {
+							text-align: center;
+							line-height: 56rpx;
+
+							.collect-btn {
+								width: 72rpx;
+								background: #F5F7FA;
+								border-radius: 8rpx 0rpx 0rpx 8rpx;
+
+							}
+
+							.shop-btn {
+								width: 152rpx;
+								background: linear-gradient(270deg, #FF5C03 0%, #FFAC64 100%);
+								border-radius: 0rpx 8rpx 8rpx 0rpx;
+								font-weight: 500;
+								font-size: 30rpx;
+								color: #FFFFFF;
+
+							}
+						}
+					}
+				}
+			}
 		}
 	}
 
+	:deep(.u-list-item) {
+		width: 100%;
+		display: flex;
+		align-items: center;
+	}
+
+	:deep(.u-safe-area-inset-bottom) {
+		padding-bottom: 0
+	}
 </style>

+ 58 - 58
pages/list/index.vue

@@ -123,65 +123,65 @@
 			},
 
 			// 播放视频
-			playVideo(item) {
+			// playVideo(item) {
 				
-				if ( item._isPlaying || item._error) return;
-
-				const videoId = `myVideo_${item.liveId}`;
-				const isLive = item.liveType == 1;
-
-				// 获取video上下文
-				uni.createSelectorQuery().in(this)
-					.select(`#${videoId}`)
-					.fields({
-						context: true
-					})
-					.exec((res) => {
-						if (res && res[0] && res[0].context) {
-							const videoContext = res[0].context;
-
-							try {
-								if (isLive) {
-									// 直播流处理
-									//	#ifdef H5
-									if (item.flvHlsUrl && item.flvHlsUrl.includes('.m3u8') && Hls.isSupported()) {
-										this.setupHlsPlayback(item, videoContext);
-									} else {
-										videoContext.play();
-									}
-									//#else
-									videoContext.play();
-									//#endif
-								} else {
-									// 录播视频处理 - 添加重试机制
-									const playAttempt = () => {
-										videoContext.play().then(() => {
-											console.log('录播视频播放成功:', item.liveId);
-											this.$set(item, '_isPlaying', true);
-											this.$set(item, '_videoContext', videoContext);
-										}).catch(err => {
-											console.error('录播视频播放失败:', err);
-											this.$set(item, '_error', true);
-										});
-									};
-
-									// 如果视频已加载,直接播放;否则监听加载事件
-									if (videoContext.duration > 0) {
-										playAttempt();
-									} else {
-										videoContext.onloadedmetadata = playAttempt;
-									}
-								}
-								// 播放成功后标记 _isPlaying=true
-								this.$set(item, '_isPlaying', true);
-								this.$set(item, '_videoContext', videoContext);
-							} catch (err) {
-								console.error(`播放失败 ${videoId}:`, err);
-								this.$set(item, '_error', true);
-							}
-						}
-					});
-			},
+			// 	if ( item._isPlaying || item._error) return;
+
+			// 	const videoId = `myVideo_${item.liveId}`;
+			// 	const isLive = item.liveType == 1;
+
+			// 	// 获取video上下文
+			// 	uni.createSelectorQuery().in(this)
+			// 		.select(`#${videoId}`)
+			// 		.fields({
+			// 			context: true
+			// 		})
+			// 		.exec((res) => {
+			// 			if (res && res[0] && res[0].context) {
+			// 				const videoContext = res[0].context;
+
+			// 				try {
+			// 					if (isLive) {
+			// 						// 直播流处理
+			// 						//	#ifdef H5
+			// 						if (item.flvHlsUrl && item.flvHlsUrl.includes('.m3u8') && Hls.isSupported()) {
+			// 							this.setupHlsPlayback(item, videoContext);
+			// 						} else {
+			// 							videoContext.play();
+			// 						}
+			// 						//#else
+			// 						videoContext.play();
+			// 						//#endif
+			// 					} else {
+			// 						// 录播视频处理 - 添加重试机制
+			// 						const playAttempt = () => {
+			// 							videoContext.play().then(() => {
+			// 								console.log('录播视频播放成功:', item.liveId);
+			// 								this.$set(item, '_isPlaying', true);
+			// 								this.$set(item, '_videoContext', videoContext);
+			// 							}).catch(err => {
+			// 								console.error('录播视频播放失败:', err);
+			// 								this.$set(item, '_error', true);
+			// 							});
+			// 						};
+
+			// 						// 如果视频已加载,直接播放;否则监听加载事件
+			// 						if (videoContext.duration > 0) {
+			// 							playAttempt();
+			// 						} else {
+			// 							videoContext.onloadedmetadata = playAttempt;
+			// 						}
+			// 					}
+			// 					// 播放成功后标记 _isPlaying=true
+			// 					this.$set(item, '_isPlaying', true);
+			// 					this.$set(item, '_videoContext', videoContext);
+			// 				} catch (err) {
+			// 					console.error(`播放失败 ${videoId}:`, err);
+			// 					this.$set(item, '_error', true);
+			// 				}
+			// 			}
+			// 		});
+			// },
 
 
 

+ 3 - 1
pages_shop/order.vue

@@ -198,15 +198,17 @@
 			},
 			// 取消订单
 			cancel(item) {
+			
 				var that = this;
 				uni.showModal({
 					title: '提示',
 					content: '确定取消订单吗',
 					success: function(res) {
 						if (res.confirm) {
-							var data = {
+							const data = {
 								orderId: item.orderId,
 							};
+							console.log(data)	
 							cancelOrder(data).then(res => {
 								if (res.code == 200) {
 									uni.showToast({

BIN
static/images/red_card.png


+ 0 - 1
unpackage/dist/dev/mp-weixin/api/home.js

@@ -1 +0,0 @@
-"use strict";const t=require("../common/request.js");let i=new t.Request().http;function s(e){return i("/app/live/live",e,"GET","application/json;charset=UTF-8",!1)}exports.getlive=s;

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
unpackage/dist/dev/mp-weixin/api/live.js


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
unpackage/dist/dev/mp-weixin/common/assets.js


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 1
unpackage/dist/dev/mp-weixin/common/vendor.js


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
unpackage/dist/dev/mp-weixin/components/ThreeDSwiper.js


+ 0 - 0
unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-link/u-link.json → unpackage/dist/dev/mp-weixin/components/ThreeDSwiper.json


+ 1 - 0
unpackage/dist/dev/mp-weixin/components/ThreeDSwiper.wxml

@@ -0,0 +1 @@
+<view class="three-item-swiper data-v-51bea54d"><view class="swiper-container data-v-51bea54d" style="{{'height:' + d}}"><view class="swiper-wrapper data-v-51bea54d" style="{{'transform:' + b + ';' + ('transition:' + c)}}"><view wx:for="{{a}}" wx:for-item="item" wx:key="e" class="swiper-item data-v-51bea54d" style="{{item.f}}"><image src="{{item.a}}" mode="cover" class="item-image data-v-51bea54d" alt="{{item.b}}"></image><view wx:if="{{item.c}}" class="item-title data-v-51bea54d">{{item.d}}</view></view></view></view><view class="indicators data-v-51bea54d"><view wx:for="{{e}}" wx:for-item="item" wx:key="a" class="{{['indicator', 'data-v-51bea54d', item.b && 'active']}}" bindtap="{{item.c}}"></view></view></view>

+ 1 - 0
unpackage/dist/dev/mp-weixin/components/ThreeDSwiper.wxss

@@ -0,0 +1 @@
+.three-item-swiper.data-v-51bea54d,.swiper-container.data-v-51bea54d{position:relative;width:100%;overflow:hidden}.swiper-wrapper.data-v-51bea54d{position:absolute;top:0;left:0;height:100%;display:flex}.swiper-item.data-v-51bea54d{height:100%;flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}.item-image.data-v-51bea54d{width:100%;height:100%;border-radius:16rpx;box-shadow:0 10rpx 30rpx rgba(0,0,0,.2)}.item-title.data-v-51bea54d{position:absolute;bottom:20rpx;left:0;right:0;text-align:center;color:#fff;font-size:32rpx;text-shadow:0 2rpx 4rpx rgba(0,0,0,.5);padding:0 20rpx;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.indicators.data-v-51bea54d{display:flex;justify-content:center;gap:12rpx;padding:20rpx 0}.indicator.data-v-51bea54d{width:16rpx;height:16rpx;border-radius:50%;background-color:#ddd;transition:all .3s ease}.indicator.active.data-v-51bea54d{width:40rpx;border-radius:8rpx;background-color:#007aff}

+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/auth/h5WxLogin.js

@@ -1 +1 @@
-"use strict";const n=require("../../common/vendor.js"),a=require("../../api/login.js"),s=require("../../common/assets.js"),d=()=>String(navigator.userAgent.toLowerCase().match(/MicroMessenger/i))==="micromessenger",l={data(){return{code:null}},onLoad(e){this.getWechatCode()},onUnload(){},mounted(){},methods:{loginByMp(){if(this.code==null)return;n.index.showLoading({title:"处理中..."});let e=this;var o={code:this.code};a.loginByWeChat(o).then(t=>{n.index.hideLoading(),t.code==200?(n.index.setStorageSync("AppToken",t.token),n.index.setStorageSync("userInfo",JSON.stringify(t.user)),n.index.$emit("refreshIM"),e.goToLanch()):n.index.showToast({title:t.msg,icon:"none"})},t=>{})},getWechatCode(){if(d){let e="wx9ea36eecd281bcd3",o=this.getUrlCode().code,t=window.location.href;o==null||o===""?window.location.href="https://open.weixin.qq.com/connect/oauth2/authorize?appid="+e+"&redirect_uri="+encodeURIComponent(t)+"&response_type=code&scope=snsapi_userinfo&state=STATE#wechat_redirect":this.code=o}},getUrlCode(){var e=location.search,o=new Object;if(e.indexOf("?")!=-1)for(var t=e.substr(1),i=t.split("&"),r=0;r<i.length;r++)o[i[r].split("=")[0]]=i[r].split("=")[1];return console.log(o),o},goToLanch(){let e=n.index.getStorageSync("beforLoginPage");console.log("beforLoginUrl:"+e),n.index.reLaunch({url:e})}}};function g(e,o,t,i,r,c){return{a:s._imports_0$3,b:n.o(u=>c.loginByMp())}}const h=n._export_sfc(l,[["render",g]]);wx.createPage(h);
+"use strict";const n=require("../../common/vendor.js"),a=require("../../api/login.js"),s=require("../../common/assets.js"),d=()=>String(navigator.userAgent.toLowerCase().match(/MicroMessenger/i))==="micromessenger",l={data(){return{code:null}},onLoad(e){this.getWechatCode()},onUnload(){},mounted(){},methods:{loginByMp(){if(this.code==null)return;n.index.showLoading({title:"处理中..."});let e=this;var o={code:this.code};a.loginByWeChat(o).then(t=>{n.index.hideLoading(),t.code==200?(n.index.setStorageSync("AppToken",t.token),n.index.setStorageSync("userInfo",JSON.stringify(t.user)),n.index.$emit("refreshIM"),e.goToLanch()):n.index.showToast({title:t.msg,icon:"none"})},t=>{})},getWechatCode(){if(d){let e="wx9ea36eecd281bcd3",o=this.getUrlCode().code,t=window.location.href;o==null||o===""?window.location.href="https://open.weixin.qq.com/connect/oauth2/authorize?appid="+e+"&redirect_uri="+encodeURIComponent(t)+"&response_type=code&scope=snsapi_userinfo&state=STATE#wechat_redirect":this.code=o}},getUrlCode(){var e=location.search,o=new Object;if(e.indexOf("?")!=-1)for(var t=e.substr(1),i=t.split("&"),r=0;r<i.length;r++)o[i[r].split("=")[0]]=i[r].split("=")[1];return console.log(o),o},goToLanch(){let e=n.index.getStorageSync("beforLoginPage");console.log("beforLoginUrl:"+e),n.index.reLaunch({url:e})}}};function g(e,o,t,i,r,c){return{a:s._imports_0$2,b:n.o(u=>c.loginByMp())}}const h=n._export_sfc(l,[["render",g]]);wx.createPage(h);

+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/auth/loginIndex.js

@@ -1 +1 @@
-"use strict";const e=require("../../common/vendor.js");require("../../api/login.js");const g=require("../../common/assets.js"),u={data(){return{btnLoading:!1,agree:!1}},onLoad(){if(!this.$isLogin()){let t=getCurrentPages(),o=t[t.length-3];if(t.length>2&&o&&(o.route=="pages/auth/login"||o.route=="pages/auth/loginIndex"||o.route=="pages/common/launch"))e.index.navigateBack({delta:2});else if(String(navigator.userAgent.toLowerCase().match(/MicroMessenger/i))==="micromessenger"){const s=getCurrentPages();if(s.length>1){const a=s[s.length-2],n=a.options;if(n&&JSON.stringify(n)!="{}"){let r="/"+a.route+e.index.$u.queryParams(n);e.index.setStorageSync("beforLoginPage",r)}else e.index.setStorageSync("beforLoginPage","/"+a.route);e.index.redirectTo({url:"/pages/auth/h5WxLogin"})}else this.submit()}else e.index.redirectTo({url:"/pages/auth/login"})}},onShow(){this.$isLogin()&&e.index.reLaunch({url:"../course/index",animationType:"none",animationDuration:2e3})},methods:{goToWeb(t){e.index.setStorageSync("url",t==0?"https://userapp.his.cdwjyyh.com/web/userAgreement":"https://userapp.his.cdwjyyh.com/web/privacyPolicy"),e.index.navigateTo({url:"/pages/index/h5"})},handleAgree(){this.agree=!this.agree},submit(){this.$showLoginPage()},handleOtherLogin(){e.index.redirectTo({url:"/pages/auth/login"})},close(t){this.$refs.popup.close(),t=="agree"&&(this.agree=!0,this.submit())}}};function h(t,o,s,a,n,r){return{a:n.btnLoading,b:n.btnLoading,c:e.o((...i)=>r.submit&&r.submit(...i)),d:n.btnLoading,e:e.o((...i)=>r.handleOtherLogin&&r.handleOtherLogin(...i)),f:g._imports_0$4,g:!n.agree,h:g._imports_1$4,i:n.agree,j:e.o((...i)=>r.handleAgree&&r.handleAgree(...i)),k:e.o(i=>r.goToWeb(0)),l:e.o(i=>r.goToWeb(1))}}const c=e._export_sfc(u,[["render",h],["__scopeId","data-v-648b5fa7"]]);wx.createPage(c);
+"use strict";const e=require("../../common/vendor.js");require("../../api/login.js");const g=require("../../common/assets.js"),u={data(){return{btnLoading:!1,agree:!1}},onLoad(){if(!this.$isLogin()){let t=getCurrentPages(),o=t[t.length-3];if(t.length>2&&o&&(o.route=="pages/auth/login"||o.route=="pages/auth/loginIndex"||o.route=="pages/common/launch"))e.index.navigateBack({delta:2});else if(String(navigator.userAgent.toLowerCase().match(/MicroMessenger/i))==="micromessenger"){const s=getCurrentPages();if(s.length>1){const a=s[s.length-2],n=a.options;if(n&&JSON.stringify(n)!="{}"){let r="/"+a.route+e.index.$u.queryParams(n);e.index.setStorageSync("beforLoginPage",r)}else e.index.setStorageSync("beforLoginPage","/"+a.route);e.index.redirectTo({url:"/pages/auth/h5WxLogin"})}else this.submit()}else e.index.redirectTo({url:"/pages/auth/login"})}},onShow(){this.$isLogin()&&e.index.reLaunch({url:"../course/index",animationType:"none",animationDuration:2e3})},methods:{goToWeb(t){e.index.setStorageSync("url",t==0?"https://userapp.his.cdwjyyh.com/web/userAgreement":"https://userapp.his.cdwjyyh.com/web/privacyPolicy"),e.index.navigateTo({url:"/pages/index/h5"})},handleAgree(){this.agree=!this.agree},submit(){this.$showLoginPage()},handleOtherLogin(){e.index.redirectTo({url:"/pages/auth/login"})},close(t){this.$refs.popup.close(),t=="agree"&&(this.agree=!0,this.submit())}}};function h(t,o,s,a,n,r){return{a:n.btnLoading,b:n.btnLoading,c:e.o((...i)=>r.submit&&r.submit(...i)),d:n.btnLoading,e:e.o((...i)=>r.handleOtherLogin&&r.handleOtherLogin(...i)),f:g._imports_0$3,g:!n.agree,h:g._imports_1$2,i:n.agree,j:e.o((...i)=>r.handleAgree&&r.handleAgree(...i)),k:e.o(i=>r.goToWeb(0)),l:e.o(i=>r.goToWeb(1))}}const c=e._export_sfc(u,[["render",h],["__scopeId","data-v-648b5fa7"]]);wx.createPage(c);

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
unpackage/dist/dev/mp-weixin/pages/home/living.js


+ 1 - 3
unpackage/dist/dev/mp-weixin/pages/home/living.json

@@ -4,8 +4,6 @@
   "enablePullDownRefresh": false,
   "navigationStyle": "custom",
   "usingComponents": {
-    "u-avatar": "../../uni_modules/uview-plus/components/u-avatar/u-avatar",
-    "u-input": "../../uni_modules/uview-plus/components/u-input/u-input",
-    "u-popup": "../../uni_modules/uview-plus/components/u-popup/u-popup"
+    "three-item-swiper": "../../components/ThreeDSwiper"
   }
 }

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
unpackage/dist/dev/mp-weixin/pages/home/living.wxml


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
unpackage/dist/dev/mp-weixin/pages/home/living.wxss


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
unpackage/dist/dev/mp-weixin/pages/list/index.js


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
unpackage/dist/dev/mp-weixin/pages_shop/cart.js


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
unpackage/dist/dev/mp-weixin/pages_shop/confirmCreateOrder.js


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
unpackage/dist/dev/mp-weixin/pages_shop/confirmPackageOrder.js


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
unpackage/dist/dev/mp-weixin/pages_shop/goods.js


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
unpackage/dist/dev/mp-weixin/pages_shop/order.js


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
unpackage/dist/dev/mp-weixin/pages_shop/paymentOrder.js


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
unpackage/dist/dev/mp-weixin/pages_shop/refundOrder.js


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
unpackage/dist/dev/mp-weixin/pages_shop/store.js


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
unpackage/dist/dev/mp-weixin/pages_shop/storeOrder.js


+ 1 - 1
unpackage/dist/dev/mp-weixin/pages_shop/storeOrderDelivery.js

@@ -1 +1 @@
-"use strict";const e=require("../common/vendor.js"),n=require("../common/assets.js"),d={data(){return{statusBarHeight:e.index.getStorageSync("menuInfo").statusBarHeight,orderId:null,deliveryId:null,express:{},expressList:[]}},onLoad(r){this.orderId=r.orderId,this.getExpress()},methods:{getExpress(){var r={orderId:this.orderId};getExpress(r).then(t=>{t.code==200?(this.express=t.express,this.expressList=t.data,this.deliveryId=t.deliveryId):e.index.showToast({icon:"none",title:"请求失败"})})},back(){e.index.navigateBack()},copyOrderSn(r){e.index.setClipboardData({data:r,success:()=>{e.index.showToast({title:"内容已成功复制到剪切板",icon:"none"})}})},callPhone(r){e.index.makePhoneCall({phoneNumber:r})}}};function a(r,t,p,x,s,o){return e.e({a:n._imports_0$12,b:s.statusBarHeight,c:n._imports_1$8,d:e.o((...i)=>o.back&&o.back(...i)),e:e.t(s.deliveryId),f:e.o(i=>o.copyOrderSn(s.deliveryId)),g:e.t(s.express.name),h:s.expressList!=null},s.expressList!=null?e.e({i:s.expressList.Traces!=null},s.expressList.Traces!=null?{j:e.f(s.expressList.Traces,(i,c,u)=>({a:e.t(i.AcceptStation),b:e.t(i.AcceptTime),c})),k:n._imports_2$5,l:n._imports_3$2}:{}):{})}const l=e._export_sfc(d,[["render",a]]);wx.createPage(l);
+"use strict";const e=require("../common/vendor.js"),n=require("../common/assets.js"),d={data(){return{statusBarHeight:e.index.getStorageSync("menuInfo").statusBarHeight,orderId:null,deliveryId:null,express:{},expressList:[]}},onLoad(r){this.orderId=r.orderId,this.getExpress()},methods:{getExpress(){var r={orderId:this.orderId};getExpress(r).then(t=>{t.code==200?(this.express=t.express,this.expressList=t.data,this.deliveryId=t.deliveryId):e.index.showToast({icon:"none",title:"请求失败"})})},back(){e.index.navigateBack()},copyOrderSn(r){e.index.setClipboardData({data:r,success:()=>{e.index.showToast({title:"内容已成功复制到剪切板",icon:"none"})}})},callPhone(r){e.index.makePhoneCall({phoneNumber:r})}}};function a(r,t,p,x,s,o){return e.e({a:n._imports_0$11,b:s.statusBarHeight,c:n._imports_1$7,d:e.o((...i)=>o.back&&o.back(...i)),e:e.t(s.deliveryId),f:e.o(i=>o.copyOrderSn(s.deliveryId)),g:e.t(s.express.name),h:s.expressList!=null},s.expressList!=null?e.e({i:s.expressList.Traces!=null},s.expressList.Traces!=null?{j:e.f(s.expressList.Traces,(i,c,u)=>({a:e.t(i.AcceptStation),b:e.t(i.AcceptTime),c})),k:n._imports_2$4,l:n._imports_3$1}:{}):{})}const l=e._export_sfc(d,[["render",a]]);wx.createPage(l);

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
unpackage/dist/dev/mp-weixin/pages_shop/storeOrderRefundSubmit.js


+ 1 - 1
unpackage/dist/dev/mp-weixin/pages_shop/success.js

@@ -1 +1 @@
-"use strict";const e=require("../common/vendor.js"),t=require("../common/assets.js"),i={data(){return{order:null,orderCode:"",ids:[]}},onLoad(r){this.order=JSON.parse(decodeURIComponent(r.order)),this.orderCode=this.order&&this.order.orderCodes?this.order.orderCodes.join(","):this.order.orderCode||"",this.ids=this.order&&this.order.ids?this.order.ids:this.order.id?[this.order.id]:[]},methods:{copyOrderSn(r){e.index.setClipboardData({data:r,success:()=>{e.index.showToast({title:"内容已成功复制到剪切板",icon:"none"})}})},goOrderDetails(r){this.ids&&this.ids.length>1?e.index.navigateTo({url:"/pages_user/user/storeOrder?status="}):e.index.redirectTo({url:"/pages_user/user/storeOrderDetail?id="+this.ids[0]})}}};function n(r,a,h,u,o,s){return{a:t._imports_0$11,b:e.o(d=>s.goOrderDetails(o.order.id)),c:e.f(o.order.orderCodes,(d,_,l)=>({a:e.t(d),b:d})),d:e.o(d=>s.copyOrderSn(o.orderCode)),e:e.t(o.order.createTime)}}const c=e._export_sfc(i,[["render",n]]);wx.createPage(c);
+"use strict";const e=require("../common/vendor.js"),t=require("../common/assets.js"),i={data(){return{order:null,orderCode:"",ids:[]}},onLoad(r){this.order=JSON.parse(decodeURIComponent(r.order)),this.orderCode=this.order&&this.order.orderCodes?this.order.orderCodes.join(","):this.order.orderCode||"",this.ids=this.order&&this.order.ids?this.order.ids:this.order.id?[this.order.id]:[]},methods:{copyOrderSn(r){e.index.setClipboardData({data:r,success:()=>{e.index.showToast({title:"内容已成功复制到剪切板",icon:"none"})}})},goOrderDetails(r){this.ids&&this.ids.length>1?e.index.navigateTo({url:"/pages_user/user/storeOrder?status="}):e.index.redirectTo({url:"/pages_user/user/storeOrderDetail?id="+this.ids[0]})}}};function n(r,a,h,u,o,s){return{a:t._imports_0$10,b:e.o(d=>s.goOrderDetails(o.order.id)),c:e.f(o.order.orderCodes,(d,_,l)=>({a:e.t(d),b:d})),d:e.o(d=>s.copyOrderSn(o.orderCode)),e:e.t(o.order.createTime)}}const c=e._export_sfc(i,[["render",n]]);wx.createPage(c);

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
unpackage/dist/dev/mp-weixin/pages_user/addAddress.js


+ 1 - 1
unpackage/dist/dev/mp-weixin/pages_user/address.js

@@ -1 +1 @@
-"use strict";const e=require("../common/vendor.js"),u=require("../api/order.js"),o=require("../common/assets.js"),h={data(){return{address:[]}},onLoad(){this.getUserAddr(),e.index.$on("refreshAddress",()=>{this.getUserAddr()})},methods:{getUserAddr(){this.userInfo=JSON.parse(e.index.getStorageSync("userInfo")),u.userAddr(this.userInfo.userId).then(s=>{s.code==200?(console.log("用户收货地址>>>>",s.data),this.address=s.data):e.index.showToast({title:s.msg,icon:"none"})},s=>{})},selectAddress(s){e.index.$emit("updateAddress",s),e.index.navigateBack({delta:1})},editAddress(s){e.index.navigateTo({url:"./addAddress?type=edit&addressId="+s.addressId})},delAddress(s){e.index.showModal({title:"提示",content:"确认删除此地址吗?",showCancel:!0,cancelText:"取消",confirmText:"确定",success:i=>{if(i.confirm){var c={addressId:s.addressId};u.delAddress(c).then(n=>{n.code==200?(e.index.showToast({icon:"success",title:"操作成功"}),this.getUserAddr()):e.index.showToast({icon:"none",title:"请求失败"})},n=>{})}}})},addAdress(){e.index.navigateTo({url:"./addAddress?type=add"})}}};function A(s,i,c,n,a,r){return e.e({a:e.f(a.address,(d,t,f)=>e.e({a:d.isDefault==1},d.isDefault==1?{}:{},{b:e.t(d.province),c:e.t(d.city),d:e.t(d.district),e:e.t(d.detail),f:e.t(d.realName),g:e.t(s.$parsePhone(d.phone)),h:e.o(l=>r.selectAddress(d),t),i:e.o(l=>r.delAddress(d),t),j:e.o(l=>r.editAddress(d),t),k:t})),b:o._imports_0$13,c:o._imports_1$9,d:a.address.length==0},a.address.length==0?{e:o._imports_2$1,f:e.o(d=>s.getAddressList())}:{},{g:e.o((...d)=>r.addAdress&&r.addAdress(...d))})}const g=e._export_sfc(h,[["render",A]]);wx.createPage(g);
+"use strict";const e=require("../common/vendor.js"),u=require("../api/order.js"),o=require("../common/assets.js"),h={data(){return{address:[]}},onLoad(){this.getUserAddr(),e.index.$on("refreshAddress",()=>{this.getUserAddr()})},methods:{getUserAddr(){this.userInfo=JSON.parse(e.index.getStorageSync("userInfo")),u.userAddr(this.userInfo.userId).then(s=>{s.code==200?(console.log("用户收货地址>>>>",s.data),this.address=s.data):e.index.showToast({title:s.msg,icon:"none"})},s=>{})},selectAddress(s){e.index.$emit("updateAddress",s),e.index.navigateBack({delta:1})},editAddress(s){e.index.navigateTo({url:"./addAddress?type=edit&addressId="+s.addressId})},delAddress(s){e.index.showModal({title:"提示",content:"确认删除此地址吗?",showCancel:!0,cancelText:"取消",confirmText:"确定",success:i=>{if(i.confirm){var c={addressId:s.addressId};u.delAddress(c).then(n=>{n.code==200?(e.index.showToast({icon:"success",title:"操作成功"}),this.getUserAddr()):e.index.showToast({icon:"none",title:"请求失败"})},n=>{})}}})},addAdress(){e.index.navigateTo({url:"./addAddress?type=add"})}}};function A(s,i,c,n,a,r){return e.e({a:e.f(a.address,(d,t,f)=>e.e({a:d.isDefault==1},d.isDefault==1?{}:{},{b:e.t(d.province),c:e.t(d.city),d:e.t(d.district),e:e.t(d.detail),f:e.t(d.realName),g:e.t(s.$parsePhone(d.phone)),h:e.o(l=>r.selectAddress(d),t),i:e.o(l=>r.delAddress(d),t),j:e.o(l=>r.editAddress(d),t),k:t})),b:o._imports_0$12,c:o._imports_1$8,d:a.address.length==0},a.address.length==0?{e:o._imports_2,f:e.o(d=>s.getAddressList())}:{},{g:e.o((...d)=>r.addAdress&&r.addAdress(...d))})}const g=e._export_sfc(h,[["render",A]]);wx.createPage(g);

BIN
unpackage/dist/dev/mp-weixin/static/images/red_card.png


+ 0 - 1
unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-avatar/props.js

@@ -1 +0,0 @@
-"use strict";const e=require("../../libs/config/props.js"),a=require("../../libs/function/test.js"),r={props:{src:{type:String,default:()=>e.defProps.avatar.src},shape:{type:String,default:()=>e.defProps.avatar.shape},size:{type:[String,Number],default:()=>e.defProps.avatar.size},mode:{type:String,default:()=>e.defProps.avatar.mode},text:{type:String,default:()=>e.defProps.avatar.text},bgColor:{type:String,default:()=>e.defProps.avatar.bgColor},color:{type:String,default:()=>e.defProps.avatar.color},fontSize:{type:[String,Number],default:()=>e.defProps.avatar.fontSize},icon:{type:String,default:()=>e.defProps.avatar.icon},mpAvatar:{type:Boolean,default:()=>e.defProps.avatar.mpAvatar},randomBgColor:{type:Boolean,default:()=>e.defProps.avatar.randomBgColor},defaultUrl:{type:String,default:()=>e.defProps.avatar.defaultUrl},colorIndex:{type:[String,Number],validator(t){return a.test.range(t,[0,19])||t===""},default:()=>e.defProps.avatar.colorIndex},name:{type:String,default:()=>e.defProps.avatar.name}}};exports.props=r;

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-avatar/u-avatar.js


+ 0 - 7
unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-avatar/u-avatar.json

@@ -1,7 +0,0 @@
-{
-  "component": true,
-  "usingComponents": {
-    "u-icon": "../u-icon/u-icon",
-    "u-text": "../u-text/u-text"
-  }
-}

+ 0 - 1
unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-avatar/u-avatar.wxml

@@ -1 +0,0 @@
-<view class="{{['u-avatar', 'data-v-34d954f9', m]}}" style="{{n + ';' + o}}" bindtap="{{p}}"><block wx:if="{{$slots.d}}"><slot></slot></block><block wx:else><open-data wx:if="{{a}}" class="data-v-34d954f9" type="userAvatarUrl" style="{{b}}"/><block wx:if="{{c}}"></block><u-icon wx:elif="{{d}}" class="data-v-34d954f9" u-i="34d954f9-0" bind:__l="__l" u-p="{{e}}"></u-icon><u-text wx:elif="{{f}}" class="data-v-34d954f9" u-i="34d954f9-1" bind:__l="__l" u-p="{{g}}"></u-text><image wx:else class="{{['u-avatar__image', 'data-v-34d954f9', h]}}" src="{{i}}" mode="{{j}}" binderror="{{k}}" style="{{l}}"></image></block></view>

+ 0 - 1
unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-avatar/u-avatar.wxss

@@ -1 +0,0 @@
-.u-empty.data-v-34d954f9,.u-empty__wrap.data-v-34d954f9,.u-tabs.data-v-34d954f9,.u-tabs__wrapper.data-v-34d954f9,.u-tabs__wrapper__scroll-view-wrapper.data-v-34d954f9,.u-tabs__wrapper__scroll-view.data-v-34d954f9,.u-tabs__wrapper__nav.data-v-34d954f9,.u-tabs__wrapper__nav__line.data-v-34d954f9{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-avatar.data-v-34d954f9{display:flex;flex-direction:row;align-items:center;justify-content:center}.u-avatar--circle.data-v-34d954f9{border-radius:100px}.u-avatar--square.data-v-34d954f9{border-radius:4px}.u-avatar__image--circle.data-v-34d954f9{border-radius:100px;overflow:hidden}.u-avatar__image--square.data-v-34d954f9{border-radius:4px}

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-input/props.js


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-input/u-input.js


+ 0 - 6
unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-input/u-input.json

@@ -1,6 +0,0 @@
-{
-  "component": true,
-  "usingComponents": {
-    "u-icon": "../u-icon/u-icon"
-  }
-}

+ 0 - 1
unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-input/u-input.wxml

@@ -1 +0,0 @@
-<view class="{{['u-input', 'data-v-df79975b', I]}}" style="{{J}}"><view class="u-input__content data-v-df79975b"><view wx:if="{{a}}" class="u-input__content__prefix-icon data-v-df79975b"><block wx:if="{{$slots.prefix}}"><slot name="prefix"></slot></block><block wx:else><u-icon wx:if="{{b}}" class="data-v-df79975b" u-i="df79975b-0" bind:__l="__l" u-p="{{b}}"></u-icon></block></view><view class="u-input__content__field-wrapper data-v-df79975b" bindtap="{{C}}"><block wx:if="{{r0}}"><input class="u-input__content__field-wrapper__field data-v-df79975b" style="{{c}}" type="{{d}}" focus="{{e}}" cursor="{{f}}" value="{{g}}" auto-blur="{{h}}" disabled="{{i}}" maxlength="{{j}}" placeholder="{{k}}" placeholder-style="{{l}}" placeholder-class="{{m}}" confirm-type="{{n}}" confirm-hold="{{o}}" hold-keyboard="{{p}}" cursor-spacing="{{q}}" adjust-position="{{r}}" selection-end="{{s}}" selection-start="{{t}}" password="{{v}}" ignoreCompositionEvent="{{w}}" bindinput="{{x}}" bindblur="{{y}}" bindfocus="{{z}}" bindconfirm="{{A}}" bindkeyboardheightchange="{{B}}"/></block></view><view wx:if="{{D}}" class="u-input__content__clear data-v-df79975b" bindtap="{{F}}"><u-icon wx:if="{{E}}" class="data-v-df79975b" u-i="df79975b-1" bind:__l="__l" u-p="{{E}}"></u-icon></view><view wx:if="{{G}}" class="u-input__content__subfix-icon data-v-df79975b"><block wx:if="{{$slots.suffix}}"><slot name="suffix"></slot></block><block wx:else><u-icon wx:if="{{H}}" class="data-v-df79975b" u-i="df79975b-2" bind:__l="__l" u-p="{{H}}"></u-icon></block></view></view></view>

+ 0 - 1
unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-input/u-input.wxss

@@ -1 +0,0 @@
-.u-empty.data-v-df79975b,.u-empty__wrap.data-v-df79975b,.u-tabs.data-v-df79975b,.u-tabs__wrapper.data-v-df79975b,.u-tabs__wrapper__scroll-view-wrapper.data-v-df79975b,.u-tabs__wrapper__scroll-view.data-v-df79975b,.u-tabs__wrapper__nav.data-v-df79975b,.u-tabs__wrapper__nav__line.data-v-df79975b{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-input.data-v-df79975b{display:flex;flex-direction:row;align-items:center;justify-content:space-between;flex:1}.u-input--radius.data-v-df79975b,.u-input--square.data-v-df79975b{border-radius:4px}.u-input--no-radius.data-v-df79975b{border-radius:0}.u-input--circle.data-v-df79975b{border-radius:100px}.u-input__content.data-v-df79975b{flex:1;display:flex;flex-direction:row;align-items:center;justify-content:space-between}.u-input__content__field-wrapper.data-v-df79975b{position:relative;display:flex;flex-direction:row;margin:0;flex:1}.u-input__content__field-wrapper__field.data-v-df79975b{line-height:26px;text-align:left;color:#303133;height:24px;font-size:15px;flex:1}.u-input__content__clear.data-v-df79975b{width:20px;height:20px;border-radius:100px;background-color:#c6c7cb;display:flex;flex-direction:row;align-items:center;justify-content:center;transform:scale(.82);margin-left:4px}.u-input__content__subfix-icon.data-v-df79975b{margin-left:4px}.u-input__content__prefix-icon.data-v-df79975b{margin-right:4px}

+ 0 - 1
unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-link/props.js

@@ -1 +0,0 @@
-"use strict";const e=require("../../libs/config/props.js"),t={props:{color:{type:String,default:()=>e.defProps.link.color},fontSize:{type:[String,Number],default:()=>e.defProps.link.fontSize},underLine:{type:Boolean,default:()=>e.defProps.link.underLine},href:{type:String,default:()=>e.defProps.link.href},mpTips:{type:String,default:()=>e.defProps.link.mpTips},lineColor:{type:String,default:()=>e.defProps.link.lineColor},text:{type:String,default:()=>e.defProps.link.text}}};exports.props=t;

+ 0 - 1
unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-link/u-link.js

@@ -1 +0,0 @@
-"use strict";const e=require("../../../../common/vendor.js"),o=require("./props.js"),u=require("../../libs/mixin/mpMixin.js"),c=require("../../libs/mixin/mixin.js"),i=require("../../libs/function/index.js"),d={name:"u-link",mixins:[u.mpMixin,c.mixin,o.props],computed:{linkStyle(){return{color:this.color,fontSize:i.addUnit(this.fontSize),lineHeight:i.addUnit(i.getPx(this.fontSize)+2),textDecoration:this.underLine?"underline":"none"}}},emits:["click"],methods:{addStyle:i.addStyle,openLink(){e.index.setClipboardData({data:this.href,success:()=>{e.index.hideToast(),this.$nextTick(()=>{i.toast(this.mpTips)})}}),this.$emit("click")}}};function r(t,_,m,a,p,n){return{a:e.t(t.text),b:e.o((...s)=>n.openLink&&n.openLink(...s)),c:e.s(n.linkStyle),d:e.s(n.addStyle(t.customStyle))}}const l=e._export_sfc(d,[["render",r],["__scopeId","data-v-12f6646d"]]);wx.createComponent(l);

+ 0 - 1
unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-link/u-link.wxml

@@ -1 +0,0 @@
-<text class="u-link data-v-12f6646d" catchtap="{{b}}" style="{{c + ';' + d}}">{{a}}</text>

+ 0 - 1
unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-link/u-link.wxss

@@ -1 +0,0 @@
-.u-empty.data-v-12f6646d,.u-empty__wrap.data-v-12f6646d,.u-tabs.data-v-12f6646d,.u-tabs__wrapper.data-v-12f6646d,.u-tabs__wrapper__scroll-view-wrapper.data-v-12f6646d,.u-tabs__wrapper__scroll-view.data-v-12f6646d,.u-tabs__wrapper__nav.data-v-12f6646d,.u-tabs__wrapper__nav__line.data-v-12f6646d{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-link.data-v-12f6646d{line-height:1;display:flex;flex-direction:row;flex-wrap:wrap;flex:1}

+ 0 - 1
unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-text/props.js

@@ -1 +0,0 @@
-"use strict";const e=require("../../libs/config/props.js"),t={props:{type:{type:String,default:()=>e.defProps.text.type},show:{type:Boolean,default:()=>e.defProps.text.show},text:{type:[String,Number],default:()=>e.defProps.text.text},prefixIcon:{type:String,default:()=>e.defProps.text.prefixIcon},suffixIcon:{type:String,default:()=>e.defProps.text.suffixIcon},mode:{type:String,default:()=>e.defProps.text.mode},href:{type:String,default:()=>e.defProps.text.href},format:{type:[String,Function],default:()=>e.defProps.text.format},call:{type:Boolean,default:()=>e.defProps.text.call},openType:{type:String,default:()=>e.defProps.text.openType},bold:{type:Boolean,default:()=>e.defProps.text.bold},block:{type:Boolean,default:()=>e.defProps.text.block},lines:{type:[String,Number],default:()=>e.defProps.text.lines},color:{type:String,default:()=>e.defProps.text.color},size:{type:[String,Number],default:()=>e.defProps.text.size},iconStyle:{type:[Object,String],default:()=>e.defProps.text.iconStyle},decoration:{tepe:String,default:()=>e.defProps.text.decoration},margin:{type:[Object,String,Number],default:()=>e.defProps.text.margin},lineHeight:{type:[String,Number],default:()=>e.defProps.text.lineHeight},align:{type:String,default:()=>e.defProps.text.align},wordWrap:{type:String,default:()=>e.defProps.text.wordWrap}}};exports.props=t;

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-text/u-text.js


+ 0 - 7
unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-text/u-text.json

@@ -1,7 +0,0 @@
-{
-  "component": true,
-  "usingComponents": {
-    "u-icon": "../u-icon/u-icon",
-    "u-link": "../u-link/u-link"
-  }
-}

+ 0 - 1
unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-text/u-text.wxml

@@ -1 +0,0 @@
-<view wx:if="{{a}}" class="{{['u-text', 'data-v-0a574502']}}" style="{{'margin:' + M + ';' + ('justify-content:' + N)}}" bindtap="{{O}}"><text wx:if="{{b}}" class="{{['data-v-0a574502', 'u-text__price', c]}}" style="{{d}}">¥</text><view wx:if="{{e}}" class="u-text__prefix-icon data-v-0a574502"><u-icon wx:if="{{f}}" class="data-v-0a574502" u-i="0a574502-0" bind:__l="__l" u-p="{{f}}"></u-icon></view><u-link wx:if="{{g}}" style="{{'font-weight:' + h + ';' + ('word-wrap:' + i) + ';' + ('font-size:' + j)}}" class="{{['u-text__value', 'data-v-0a574502', k, l]}}" u-i="0a574502-1" bind:__l="__l" u-p="{{m}}"></u-link><block wx:elif="{{n}}"><button class="u-reset-button u-text__value data-v-0a574502" style="{{p}}" data-index="{{q}}" openType="{{r}}" bindgetuserinfo="{{s}}" bindcontact="{{t}}" bindgetphonenumber="{{v}}" binderror="{{w}}" bindlaunchapp="{{x}}" bindopensetting="{{y}}" lang="{{z}}" session-from="{{A}}" send-message-title="{{B}}" send-message-path="{{C}}" send-message-img="{{D}}" show-message-card="{{E}}" app-parameter="{{F}}">{{o}}</button></block><text wx:else style="{{H}}" class="{{['u-text__value', 'data-v-0a574502', I, J]}}">{{G}}</text><view wx:if="{{K}}" class="u-text__suffix-icon data-v-0a574502"><u-icon wx:if="{{L}}" class="data-v-0a574502" u-i="0a574502-2" bind:__l="__l" u-p="{{L}}"></u-icon></view></view>

+ 0 - 1
unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-text/u-text.wxss

@@ -1 +0,0 @@
-.u-empty.data-v-0a574502,.u-empty__wrap.data-v-0a574502,.u-tabs.data-v-0a574502,.u-tabs__wrapper.data-v-0a574502,.u-tabs__wrapper__scroll-view-wrapper.data-v-0a574502,.u-tabs__wrapper__scroll-view.data-v-0a574502,.u-tabs__wrapper__nav.data-v-0a574502,.u-tabs__wrapper__nav__line.data-v-0a574502{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-text.data-v-0a574502{display:flex;flex-direction:row;align-items:center;flex-wrap:nowrap;flex:1;width:100%}.u-text__price.data-v-0a574502{font-size:14px;color:#606266}.u-text__value.data-v-0a574502{font-size:14px;display:flex;flex-direction:row;color:#606266;flex-wrap:wrap;text-overflow:ellipsis;align-items:center}.u-text__value--primary.data-v-0a574502{color:#3c9cff}.u-text__value--warning.data-v-0a574502{color:#f9ae3d}.u-text__value--success.data-v-0a574502{color:#5ac725}.u-text__value--info.data-v-0a574502{color:#909399}.u-text__value--error.data-v-0a574502{color:#f56c6c}.u-text__value--main.data-v-0a574502{color:#303133}.u-text__value--content.data-v-0a574502{color:#606266}.u-text__value--tips.data-v-0a574502{color:#909193}.u-text__value--light.data-v-0a574502{color:#c0c4cc}

+ 0 - 1
unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/components/u-text/value.js

@@ -1 +0,0 @@
-"use strict";const u=require("../../libs/function/index.js"),i=require("../../libs/function/test.js"),f={computed:{value(){const{text:t,mode:r,format:e,href:s}=this;return r==="price"?(/^\d+(\.\d+)?$/.test(t)||u.error("金额模式下,text参数需要为金额格式"),i.test.func(e)?e(t):u.priceFormat(t,2)):r==="date"?(!i.test.date(t)&&u.error("日期模式下,text参数需要为日期或时间戳格式"),i.test.func(e)?e(t):e?u.timeFormat(t,e):u.timeFormat(t,"yyyy-mm-dd")):r==="phone"?i.test.func(e)?e(t):e==="encrypt"?`${t.substr(0,3)}****${t.substr(7)}`:t:r==="name"?(typeof t!="string"&&u.error("姓名模式下,text参数需要为字符串格式"),i.test.func(e)?e(t):e==="encrypt"?this.formatName(t):t):(r==="link"&&!i.test.url(s)&&u.error("超链接模式下,href参数需要为URL格式"),t)}},methods:{formatName(t){let r="";if(t.length===2)r=t.substr(0,1)+"*";else if(t.length>2){let e="";for(let s=0,n=t.length-2;s<n;s++)e+="*";r=t.substr(0,1)+e+t.substr(-1,1)}else r=t;return r}}};exports.value=f;

+ 1 - 1
unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/libs/function/digit.js

@@ -1 +1 @@
-"use strict";function h(t,n=15){return+parseFloat(Number(t).toPrecision(n))}function u(t){const n=t.toString().split(/[eE]/),e=(n[0].split(".")[1]||"").length-+(n[1]||0);return e>0?e:0}function s(t){if(t.toString().indexOf("e")===-1)return Number(t.toString().replace(".",""));const n=u(t);return n>0?h(Number(t)*Math.pow(10,n)):Number(t)}function f(t){(t>Number.MAX_SAFE_INTEGER||t<Number.MIN_SAFE_INTEGER)&&console.warn(`${t} 超出了精度限制,结果可能不正确`)}function l(t,n){const[e,r,...o]=t;let i=n(e,r);return o.forEach(c=>{i=n(i,c)}),i}function a(...t){if(t.length>2)return l(t,a);const[n,e]=t,r=s(n),o=s(e),i=u(n)+u(e),c=r*o;return f(c),c/Math.pow(10,i)}function d(...t){if(t.length>2)return l(t,d);const[n,e]=t,r=s(n),o=s(e);return f(r),f(o),a(r/o,h(Math.pow(10,u(e)-u(n))))}function g(t,n){const e=Math.pow(10,n);let r=d(Math.round(Math.abs(a(t,e))),e);return t<0&&r!==0&&(r=a(r,-1)),r}exports.round=g;
+"use strict";

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/libs/function/index.js


+ 0 - 1
unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/libs/mixin/button.js

@@ -1 +0,0 @@
-"use strict";const e={props:{lang:String,sessionFrom:String,sendMessageTitle:String,sendMessagePath:String,sendMessageImg:String,showMessageCard:Boolean,appParameter:String,formType:String,openType:String}};exports.button=e;

+ 0 - 1
unpackage/dist/dev/mp-weixin/uni_modules/uview-plus/libs/mixin/openType.js

@@ -1 +0,0 @@
-"use strict";const t={props:{openType:String},methods:{onGetUserInfo(e){this.$emit("getuserinfo",e.detail)},onContact(e){this.$emit("contact",e.detail)},onGetPhoneNumber(e){this.$emit("getphonenumber",e.detail)},onError(e){this.$emit("error",e.detail)},onLaunchApp(e){this.$emit("launchapp",e.detail)},onOpenSetting(e){this.$emit("opensetting",e.detail)}}};exports.openType=t;

+ 0 - 1
unpackage/dist/dev/mp-weixin/utils/liveWS.js

@@ -1 +0,0 @@
-"use strict";require("../common/vendor.js");

이 변경점에서 너무 많은 파일들이 변경되어 몇몇 파일들은 표시되지 않았습니다.