doum
2026-04-28 9c4c0f7e30e66fe54f1b9cdab665b6e4769dbd27
small-program/pages/index/index.vue
@@ -84,6 +84,7 @@
         </view>
         <view class="toast-btn" @click="handleLocation">开启定位</view>
      </view>
      <auth-login v-if="showLogin" @close="showLogin = false"></auth-login>
      <custom-tabbar></custom-tabbar>
   </view>
</template>
@@ -98,7 +99,7 @@
         CustomTabbar
      },
      computed: {
         ...mapState(['navHeight', 'statusbarHeight', 'address', 'latitude', 'cityId', 'longitude']),
         ...mapState(['navHeight', 'statusbarHeight', 'address', 'latitude', 'cityId', 'longitude', 'token']),
         currentAddress() {
            return this.address && this.address !== '定位中' ? this.address : '获取定位'
         }
@@ -107,7 +108,9 @@
         return {
            bannerList: [],
            pointList: [],
            ingOrder: null
            ingOrder: null,
            showLogin: false,
            pendingNavigate: null
         }
      },
      async onLoad() {
@@ -120,6 +123,16 @@
      onShow() {
         this.ingOrder =null
         this.getIngorder()
      },
      watch: {
         token(newToken) {
            if (newToken && this.pendingNavigate) {
               const fn = this.pendingNavigate
               this.pendingNavigate = null
               this.showLogin = false
               fn()
            }
         }
      },
      methods: {
         jumpBannerDetail(item) {
@@ -149,12 +162,22 @@
            } 
         },
         jumpOrderList(status){
            if (!this.token) {
               this.pendingNavigate = () => this.jumpOrderList(status)
               this.showLogin = true
               return
            }
            uni.setStorageSync("orderStatus",status)
            uni.switchTab({
               url: '/pages/itinerary/itinerary'
            })
         },
         jumpxiadan() {
            if (!this.token) {
               this.pendingNavigate = () => this.jumpxiadan()
               this.showLogin = true
               return
            }
            if (!this.cityId) return uni.showToast({
               title: '当前城市暂未开通',
               icon: 'none'