From 40b2854875f492a0f2ed3e67e765846806253ae5 Mon Sep 17 00:00:00 2001
From: Ben Lin <maobin001@msn.com>
Date: 星期三, 05 三月 2025 22:55:54 +0800
Subject: [PATCH] 高级页面优化

---
 src/views/demo/comp/qrcode/index.vue |  112 ++++++++++++++++++++++++-------------------------------
 1 files changed, 49 insertions(+), 63 deletions(-)

diff --git a/src/views/demo/comp/qrcode/index.vue b/src/views/demo/comp/qrcode/index.vue
index a82ef09..bc5948a 100644
--- a/src/views/demo/comp/qrcode/index.vue
+++ b/src/views/demo/comp/qrcode/index.vue
@@ -1,19 +1,15 @@
 <template>
   <PageWrapper title="浜岀淮鐮佺粍浠朵娇鐢ㄧず渚�">
     <div class="flex flex-wrap">
-      <CollapseContainer
-        title="鍩虹绀轰緥"
-        :canExpan="true"
-        class="text-center mb-6 qrcode-demo-item"
-      >
+      <CollapseContainer title="鍩虹绀轰緥" :canExpand="true" class="text-center mb-6 w-1/5 mr-6">
         <QrCode :value="qrCodeUrl" />
       </CollapseContainer>
 
-      <CollapseContainer title="娓叉煋鎴恑mg鏍囩绀轰緥" class="text-center mb-6 qrcode-demo-item">
+      <CollapseContainer title="娓叉煋鎴恑mg鏍囩绀轰緥" class="text-center mb-6 w-1/5 mr-6">
         <QrCode :value="qrCodeUrl" tag="img" />
       </CollapseContainer>
 
-      <CollapseContainer title="閰嶇疆鏍峰紡绀轰緥" class="text-center mb-6 qrcode-demo-item">
+      <CollapseContainer title="閰嶇疆鏍峰紡绀轰緥" class="text-center mb-6 w-1/5 mr-6">
         <QrCode
           :value="qrCodeUrl"
           :options="{
@@ -22,11 +18,11 @@
         />
       </CollapseContainer>
 
-      <CollapseContainer title="鏈湴logo绀轰緥" class="text-center mb-6 qrcode-demo-item">
+      <CollapseContainer title="鏈湴logo绀轰緥" class="text-center mb-6 w-1/5 mr-6">
         <QrCode :value="qrCodeUrl" :logo="LogoImg" />
       </CollapseContainer>
 
-      <CollapseContainer title="鍦ㄧ嚎logo绀轰緥" class="text-center mb-6 qrcode-demo-item">
+      <CollapseContainer title="鍦ㄧ嚎logo绀轰緥" class="text-center mb-6 w-1/5 mr-6">
         <QrCode
           :value="qrCodeUrl"
           logo="https://vebn.oss-cn-beijing.aliyuncs.com/vben/logo.png"
@@ -36,7 +32,7 @@
         />
       </CollapseContainer>
 
-      <CollapseContainer title="logo閰嶇疆绀轰緥" class="text-center mb-6 qrcode-demo-item">
+      <CollapseContainer title="logo閰嶇疆绀轰緥" class="text-center mb-6 w-1/5 mr-6">
         <QrCode
           :value="qrCodeUrl"
           :logo="{
@@ -49,17 +45,17 @@
         />
       </CollapseContainer>
 
-      <CollapseContainer title="涓嬭浇绀轰緥" class="text-center qrcode-demo-item">
+      <CollapseContainer title="涓嬭浇绀轰緥" class="text-center mb-6 w-1/5 mr-6">
         <QrCode :value="qrCodeUrl" ref="qrRef" :logo="LogoImg" />
         <a-button class="mb-2" type="primary" @click="download"> 涓嬭浇 </a-button>
         <div class="msg">(鍦ㄧ嚎logo浼氬鑷村浘鐗囪法鍩燂紝闇�瑕佷笅杞藉浘鐗囬渶瑕佽嚜琛岃В鍐宠法鍩熼棶棰�)</div>
       </CollapseContainer>
 
-      <CollapseContainer title="閰嶇疆澶у皬绀轰緥" class="text-center qrcode-demo-item">
+      <CollapseContainer title="閰嶇疆澶у皬绀轰緥" class="text-center w-1/5 mr-6">
         <QrCode :value="qrCodeUrl" :width="300" />
       </CollapseContainer>
 
-      <CollapseContainer title="鎵╁睍缁樺埗绀轰緥" class="text-center qrcode-demo-item">
+      <CollapseContainer title="鎵╁睍缁樺埗绀轰緥" class="text-center w-1/5 mr-6">
         <QrCode
           :value="qrCodeUrl"
           :width="200"
@@ -71,58 +67,48 @@
         <a-button class="mb-2" type="primary" @click="downloadDiy"> 涓嬭浇 </a-button>
         <div class="msg">瑕佽繘琛屾墿灞曠粯鍒跺垯涓嶈兘灏唗ag璁句负img</div>
       </CollapseContainer>
+
+      <CollapseContainer title="Antdv QRCode" class="text-center w-1/5 mr-6">
+        <QRCode :value="qrCodeUrl" :size="200" />
+      </CollapseContainer>
+
+      <CollapseContainer title="Antdv QRCode 甯con" class="text-center w-1/5 mr-6">
+        <QRCode :value="qrCodeUrl" :size="200" :icon="LogoImg" />
+      </CollapseContainer>
     </div>
   </PageWrapper>
 </template>
-<script lang="ts">
-  import { defineComponent, ref, unref } from 'vue';
-  import { QrCode, QrCodeActionType } from '/@/components/Qrcode/index';
-  import LogoImg from '/@/assets/images/logo.png';
-  import { CollapseContainer } from '/@/components/Container/index';
-  import { PageWrapper } from '/@/components/Page';
+<script lang="ts" setup>
+  import LogoImg from '@/assets/images/logo.png';
+  import { CollapseContainer } from '@/components/Container';
+  import { PageWrapper } from '@/components/Page';
+  import { QrCode, QrCodeActionType } from '@/components/Qrcode';
+  import { type Nullable } from '@vben/types';
+  import { QRCode } from 'ant-design-vue';
+  import { ref, unref } from 'vue';
 
-  const qrCodeUrl = 'http://47.115.28.255:8002/WMS_PDA.apk';
-  export default defineComponent({
-    components: { CollapseContainer, QrCode, PageWrapper },
-    setup() {
-      const qrRef = ref<Nullable<QrCodeActionType>>(null);
-      const qrDiyRef = ref<Nullable<QrCodeActionType>>(null);
-      function download() {
-        const qrEl = unref(qrRef);
-        if (!qrEl) return;
-        qrEl.download('鏂囦欢鍚�');
-      }
-      function downloadDiy() {
-        const qrEl = unref(qrDiyRef);
-        if (!qrEl) return;
-        qrEl.download('Qrcode');
-      }
-
-      function onQrcodeDone({ ctx }: any) {
-        if (ctx instanceof CanvasRenderingContext2D) {
-          // 棰濆缁樺埗
-          ctx.fillStyle = 'black';
-          ctx.font = '16px "寰蒋闆呴粦"';
-          ctx.textBaseline = 'bottom';
-          ctx.textAlign = 'center';
-          ctx.fillText('浣犲竻浣犲厛鎵�', 100, 195, 200);
-        }
-      }
-      return {
-        onQrcodeDone,
-        qrCodeUrl,
-        LogoImg,
-        download,
-        downloadDiy,
-        qrRef,
-        qrDiyRef,
-      };
-    },
-  });
-</script>
-<style scoped>
-  .qrcode-demo-item {
-    width: 30%;
-    margin-right: 1%;
+  const qrCodeUrl = 'https://www.vvbin.cn';
+  const qrRef = ref<Nullable<QrCodeActionType>>(null);
+  const qrDiyRef = ref<Nullable<QrCodeActionType>>(null);
+  function download() {
+    const qrEl = unref(qrRef);
+    if (!qrEl) return;
+    qrEl.download('鏂囦欢鍚�');
   }
-</style>
+  function downloadDiy() {
+    const qrEl = unref(qrDiyRef);
+    if (!qrEl) return;
+    qrEl.download('Qrcode');
+  }
+
+  function onQrcodeDone({ ctx }: any) {
+    if (ctx instanceof CanvasRenderingContext2D) {
+      // 棰濆缁樺埗
+      ctx.fillStyle = 'black';
+      ctx.font = '16px "寰蒋闆呴粦"';
+      ctx.textBaseline = 'bottom';
+      ctx.textAlign = 'center';
+      ctx.fillText('浣犲竻浣犲厛鎵�', 100, 195, 200);
+    }
+  }
+</script>

--
Gitblit v1.9.3