Explorar el Código

更新商品跳转逻辑

tremble hace 3 años
padre
commit
2c027ea04a

+ 1 - 0
src/apis/index.js

@@ -14,6 +14,7 @@ export const get_category_list = (data) => {
 export const get_shop_list = (data) => {
   return http.get("/api/getShopByCategory", {
     ...data,
+    sceneNum:browser.getURLParam('m'),
     deptId:store.getters['scene/cdfRegionData'].deptId || null
   });
 };

+ 5 - 1
src/components/Tags/goods-list.vue

@@ -110,7 +110,11 @@ const viewDetail = (item) => {
   console.log(tagclick.value.data.productSource,'itemitemitem');
 
   if (tagclick.value.data.productSource.mchType == 1) {
-    browser.openLink(item.url)
+    if (browser.detectIOS()) {
+      window.location.href = item.url;
+    } else {
+      window.open(item.url, "_blank");
+    }
   }else{
     browser.openLink(
       `/pages/item/item?productId=${item.id}`,

+ 12 - 2
src/components/Tags/waterfall.vue

@@ -45,8 +45,18 @@ const gotoGoods = (item) => {
   }
   apis.burying_point({ type: 3, productId: item.id });
   console.log(item,'item');
-  // browser.openLink(`/pages/item/item?productId=${item.id}`, `https://m.cdfmembers.com/shop/600667208/item?productId=${item.id}`,`/pages/item/item?productId=${item.id}`);
-  // browser.openLink(item.url)
+  if (tagclick.value.data.productSource.mchType == 1) {
+    if (browser.detectIOS()) {
+      window.location.href = item.url;
+    } else {
+      window.open(item.url, "_blank");
+    }
+  }else{
+    browser.openLink(`/pages/item/item?productId=${item.id}`,
+    `https://${tagclick.value.data.productSource.cdfHost}/shop/${tagclick.value.data.productSource.cdfMchId}/item?productId=${item.id}`,
+    `/pages/item/item?productId=${item.id}`);
+    // browser.openLink(item.url)
+  }
 };
 </script>
 

+ 41 - 6
src/utils/browser.js

@@ -361,14 +361,49 @@ var browser = {
     }
     return (url.replace(re, name + "=" + value)).replace("?&",'?');
   },
-  openLink(h5link) {
-    if (!h5link) {
-      return
+  openLink(mglink, h5link, appLink) {
+    if (this.getURLParam("isBuyerApp") === "1") {
+      if (appLink) {
+        wx.miniProgram.navigateTo({
+          url: appLink,
+        });
+      }
     }
-    if (this.detectIOS()) {
-      window.location.href = h5link;
+    if (this.detectWeixin()) {
+      //ios的ua中无miniProgram,但都有MicroMessenger(表示是微信浏览器)
+      wx.miniProgram.getEnv((res) => {
+        if (res.miniprogram) {
+          //在小程序里
+          if (mglink) {
+            wx.miniProgram.navigateTo({
+              url: mglink,
+            });
+          }
+        } else {
+          if (h5link) {
+            if (this.detectIOS()) {
+              window.location.href = h5link;
+            } else {
+              window.open(h5link, "_blank");
+            }
+          }
+          // 不在小程序里
+        }
+      });
+    } else if (this.getURLParam("isMiniApp") === "1") {
+      if (appLink) {
+        wx.miniProgram.navigateTo({
+          url: appLink,
+        });
+      }
     } else {
-      window.open(h5link, "_blank");
+      if (h5link) {
+        if (this.detectIOS()) {
+          window.location.href = h5link;
+        } else {
+          window.open(h5link, "_blank");
+        }
+      }
     }
   },
 };