Просмотр исходного кода

微信支付时静默绑定微信

shmily1213 1 месяц назад
Родитель
Сommit
b4fcbf9e7e
3 измененных файлов с 20 добавлено и 28 удалено
  1. 2 1
      src/pages.json
  2. 1 1
      src/pagesStudy/pages/video/index/index.vue
  3. 17 26
      src/pagesSystem/pages/pay/pay.vue

+ 2 - 1
src/pages.json

@@ -485,7 +485,8 @@
     "pagesMain/pages/index/index": {
       "network": "all",
       "packages": [
-        "pagesStudy"
+        "pagesStudy",
+        "pagesSystem"
       ]
     }
   },

+ 1 - 1
src/pagesStudy/pages/video/index/index.vue

@@ -4,7 +4,7 @@
       :safe-area-inset-bottom="true" :hide-no-more-by-limit="10" @query="handleQuery">
       <template #top>
         <ie-navbar title="视频课程" />
-        <uv-tabs :current="current" keyName="label" :list="subjects" :scrollable="false" @change="handleTabChange" />
+        <uv-tabs :current="current" keyName="label" :list="subjects" :scrollable="true" @change="handleTabChange" />
         <uv-line margin="0" />
       </template>
       <view class="h-[8px] bg-back" />

+ 17 - 26
src/pagesSystem/pages/pay/pay.vue

@@ -37,13 +37,6 @@
         <ie-button type="primary" :loading="loading" @click="handlePay">{{ `确认支付 ¥${formatPrice}` }}</ie-button>
       </view>
     </view>
-    <ie-popup ref="popupRef" mode="center">
-      <view class="w-[70vw] px-50 pt-50 pb-80">
-        <view class="text-center text-30 text-fore-title font-bold mb-50">请先绑定微信</view>
-        <uv-button type="primary" icon-color="white" @click="handleBindWechat" icon-size="24"
-          icon="weixin-fill">点击绑定微信</uv-button>
-      </view>
-    </ie-popup>
   </ie-page>
 </template>
 <script lang="ts" setup>
@@ -65,26 +58,24 @@ async function getWxCode() {
   return null;
 }
 
-const popupRef = ref();
-const handleBindWechat = async (e: any) => {
-  uni.$ie.showLoading();
-  const code = await getWxCode();
-  if (code) {
-    bindOpenId(code).then(async res => {
-      popupRef.value?.close();
-      await userStore.getUserInfo();
-      uni.$ie.hideLoading();
-      handlePay();
-    }).catch(err => {
-      console.error(err);
-      uni.$ie.hideLoading();
-    });
-  }
-}
-
-const handlePay = () => {
+const handlePay = async () => {
   if (!userStore.isBindWechat) {
-    popupRef.value?.open();
+    uni.$ie.showLoading();
+    const code = await getWxCode();
+    if (code) {
+      bindOpenId(code).then(async res => {
+        await userStore.getUserInfo();
+        uni.$ie.hideLoading();
+        handlePay();
+      }).catch(err => {
+        console.error(err);
+        uni.$ie.hideLoading();
+        uni.$ie.showToast('绑定失败');
+      });
+    } else {
+      uni.$ie.hideLoading();
+      uni.$ie.showToast('绑定失败');
+    }
     return;
   }
   loading.value = true