zj
2024-06-03 89d48809779ae41f8712539584798d5900b64b78
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<template>
  <div>
    <div ref="qrcode" :style="`width: ${size}px; height: ${size}px`"></div>
    <img :src="qrCodeImage" :alt="text" :  style="max-width:90%">
  </div>
</template>
 
<script>
import QRCode from 'qrcodejs'
 
export default {
  props: {
    text: {
      type: String,
      required: true,
    },
    size: {
      type: Number,
      default: 200,
    },
  },
  data() {
    return {
      qrCodeImage: '',
    }
  },
  mounted() {
    this.generateQRCode()
  },
  methods: {
    generateQRCode() {
      const qrcode = new QRCode(this.$refs.qrcode, {
        text: this.text,
        width: this.size,
        height: this.size,
      })
      this.qrCodeImage = qrcode.toDataURL()
    },
  },
}
</script>