Переглянути джерело

始宁农业小程序:轮播图跳转

panyong 2 роки тому
батько
коміт
fd23f78013

+ 2 - 1
htmldev/shiningWxMini/app.json

@@ -22,7 +22,8 @@
     "pages/businessVideoManage/businessVideoManage",
     "pages/businessVideoEdit/businessVideoEdit",
     "pages/businessLeavingAMessage/businessLeavingAMessage",
-    "pages/businessApply/businessApply"
+    "pages/businessApply/businessApply",
+    "pages/h5/h5"
   ],
   "permission": {
     "scope.userLocation": {

+ 15 - 0
htmldev/shiningWxMini/pages/home/home.js

@@ -205,6 +205,21 @@ Page({
       url: '/pages/leavingAMessage/leavingAMessage'
     })
   },
+  handleSwiperClick(e) {
+    const { item } = e.currentTarget.dataset
+    if (Object.prototype.toString.call(item) === '[object Object]') {
+      const { lunbo_link_url } = item
+      if (/^http/.test(lunbo_link_url)) {
+        wx.navigateTo({
+          url: '/pages/h5/h5?url=' + lunbo_link_url
+        })
+      } else if (/^\/pages/.test(lunbo_link_url)) {
+        wx.navigateTo({
+          url: lunbo_link_url
+        })
+      }
+    }
+  },
   handleNav(e) {
     const { item } = e.currentTarget.dataset
     if (Object.prototype.toString.call(item) === '[object Object]' && item.path) {

+ 4 - 2
htmldev/shiningWxMini/pages/home/home.wxml

@@ -22,12 +22,14 @@
     class="page-section"
     wx:if="{{!!lunbos.length}}">
     <swiper
-      indicator-dots="{{true}}"
+      indicator-dots="{{lunbos.length > 1}}"
       indicator-color="rgba(151, 209, 79, 1)"
       indicator-active-color="#FFF"
       autoplay="{{false}}">
       <block wx:for="{{lunbos}}" wx:key="*this">
-        <swiper-item>
+        <swiper-item
+          data-item="{{item}}"
+          bind:tap="handleSwiperClick">
           <view class="swiper-item">
             <image src="{{item.lunbo_img_url}}"></image>
           </view>

+ 11 - 3
htmldev/shiningWxMini/pages/login/login.js

@@ -45,6 +45,7 @@ Page({
   onUnload() {
   },
   async getPhoneNumber(e) {
+    const isTab = ['pages/home/home', 'pages/partner/partner', 'pages/news/news', 'pages/mine/mine']
     const { errMsg, encryptedData, iv } = e.detail
     if (errMsg === 'getPhoneNumber:ok') {
       this.setData({
@@ -67,10 +68,17 @@ Page({
           const pages = getCurrentPages()
           if (pages.length > 1) {
             const route = pages[pages.length - 2]
-            wx.navigateBack({
-              delta: 1
-            })
+
             route.bindCallBack && route.bindCallBack()
+            if (isTab.findIndex(item => item === route.route) > -1) {
+              wx.reLaunch({
+                url: '/' + route.route
+              })
+            } else {
+              wx.navigateBack({
+                delta: 1
+              })
+            }
           }
         } else {
           wx.showToast({