rk
6 天以前 a59ff44b2eaa7020f0529632d9ec064c4dc38e27
small-program/pages/storage-point/storage-point.vue
@@ -30,7 +30,7 @@
               :class="{ active: currentDropdown === item.key }"
               @click="toggleDropdown(item.key)"
            >
               <text>{{ filterLabels[item.key] }}</text>
               <text :class="{ 'filter-text-bold': isFilterBold(item.key) }">{{ filterLabels[item.key] }}</text>
               <image :src="currentDropdown === item.key ? '/static/icon/ar_open_sel@2x.png' : '/static/icon/ar_open1@2x.png'" mode="widthFix"></image>
            </view>
         </view>
@@ -43,7 +43,7 @@
               :class="{ active: selectedFilters[currentDropdown] === option.value }"
               @click="selectDropdownOption(option)"
            >
               <text>{{ option.label }}</text>
               <text>{{ option.label||'' }}</text>
               <u-icon v-if="selectedFilters[currentDropdown] === option.value" name="checkmark" size="24" color="#2F86F6"></u-icon>
            </view>
         </view>
@@ -53,7 +53,7 @@
      <view class="content-wrap">
         <view v-if="!isMapMode" class="card-list">
            <view v-for="(item, index) in pointList" :key="index" class="point-card">
            <view v-for="(item, index) in pointList" :key="index" class="point-card" @click="goShopDetails(item)">
               <view class="thumb" :class="item.thumbClass">
                  <image :src="item.cover" mode="widthFix"></image>
               </view>
@@ -64,9 +64,9 @@
                  </view>
                  <view class="point-address">
                     <image src="/static/icon/home_ic_location3@2x.png" mode="widthFix"></image>
                     <text>{{ item.address }}</text>
                     <text>{{ item.address ||''}}</text>
                  </view>
                  <text class="point-time">{{ item.time }}</text>
                  <text class="point-time">{{ item.time|| '' }}</text>
               </view>
            </view>
         </view>
@@ -134,6 +134,7 @@
            </view>
         </view>
      </view>
      <auth-login :show="showLogin" @close="showLogin = false"></auth-login>
   </view>
</template>
@@ -181,11 +182,12 @@
               ]
            },
            pointList: [],
            isRequest: true
            isRequest: true,
            showLogin: false
         }
      },
      computed: {
         ...mapState(['latitude', 'longitude', 'cityId']),
         ...mapState(['latitude', 'longitude', 'cityId', 'token']),
         filterLabels() {
            return {
               sortType: this.getFilterLabel('sortType'),
@@ -236,6 +238,18 @@
         this.getNearbyShopList()
      },
      methods: {
         isFilterBold(key) {
            if (key === 'sortType') {
               return true
            }
            const label = this.filterLabels[key]
            if (key === 'distance') {
               return label !== '位置范围'
            } else if (key === 'businessType') {
               return label !== '营业时间'
            }
            return false
         },
         handleSearch() {
            this.page = 1
            this.pointList = []
@@ -267,6 +281,7 @@
               let arr = []
               res.data.records.forEach(item => {
                  let obj = {
                     id: item.id,
                     shopId: item.id,
                     name: item.name,
                     address: item.address,
@@ -366,8 +381,18 @@
            })
         },
         storeLuggage() {
            if (!this.token) {
               this.showLogin = true
               return
            }
            uni.navigateTo({
               url: '/pages/luggage-storage/luggage-storage'
            })
         },
         goShopDetails(item){
            console.log(item)
            uni.navigateTo({
               url: '/pages/storage-point-detail/storage-point-detail?id='+item.id
            })
         }
      }
@@ -526,7 +551,12 @@
   .filter-item.active {
      color: #222222;
   }
   .filter-text-bold {
      font-weight: 700;
      color: #000000;
   }
   .card-list {
      padding: 30rpx;
      box-sizing: border-box;