Bläddra i källkod

feat 我的钱包

Funny 3 år sedan
förälder
incheckning
e2e175f407
2 ändrade filer med 18 tillägg och 11 borttagningar
  1. 12 7
      src/components/qrCode.vue
  2. 6 4
      src/views/management/account/myWallet.vue

+ 12 - 7
src/components/qrCode.vue

@@ -1,12 +1,11 @@
 <script setup lang='ts'>
-import { onMounted, ref } from 'vue'
+import { onMounted, ref, defineExpose } from 'vue'
 import QRCode from "qrcodejs2-fixes";
 let visible = ref<boolean>(false)
-const init = () => {
+const qrinit = (v: number) => {
+  console.log('调用子组件方法');
   visible.value = true
-}
-onMounted(() => {
-  var qrcode = new QRCode(document.getElementById("qrcode"), {
+  var qrcode = new QRCode(document.getElementById("code"), {
     text: "http://jindo.dev.naver.com/collie",
     width: 128,
     height: 128,
@@ -14,11 +13,17 @@ onMounted(() => {
     colorLight: "#ffffff",
     correctLevel: QRCode.CorrectLevel.H
   });
+}
+defineExpose({
+  qrinit
+})
+onMounted(() => {
+
 })
 </script>
 <template>
-  <a-modal v-model:visible="visible" title="支付">
-    <div id="qrcode"></div>
+  <a-modal v-model:visible="visible" title="支付" :footer="null">
+    <div id="code"></div>
   </a-modal>
 </template>
 <style lang='scss' scoped>

+ 6 - 4
src/views/management/account/myWallet.vue

@@ -14,7 +14,7 @@ let checked = ref<boolean>(false)
 let amount = ref<number>(0)
 let moneyList = reactive([])
 let money = ref<any>('')
-const qrcode = ref<HTMLDivElement | null>(null);
+const QrCodeRef = ref()
 let params = reactive({
   money: 0,
   paymentType: 1,
@@ -57,8 +57,10 @@ const handleRecharge = () => {
   }
   recharge(params).then((res: any) => {
     console.log(res);
-    if(res.code === 200){
-    //  qrcode.init()
+    if (res.code === 200) {
+      if (QrCodeRef) {
+        QrCodeRef.value.qrinit()
+      }
     }
   })
 }
@@ -115,7 +117,7 @@ onMounted(() => {
     </div>
     <a-button class="w-200px h-60px mt-10px" type="primary" :disabled="!checked" @click="handleRecharge">去充值</a-button>
   </div>
-  <QrCode ref="qrcode"></QrCode>
+  <QrCode ref="QrCodeRef" :paymentType="params.paymentType"></QrCode>
 </template>
 <style lang='scss' scoped>
 .bg {