Vue页面生成二维码


给定一个网址,在页面生成二维码,手机扫码后直接进入此网站。

1)安装全局的插件

npm install qrcodejs2 -S

2)组件封装

在component目录下新建一个vue文件,内容如下

<template>
    <div>
        <div id="qrcode"></div> <!-- 创建一个div,并设置id为qrcode -->
    </div>
</template>

<script>
    // 二维码
    import QRCode from 'qrcodejs2'  // 引入qrcode
    export default {
        name: 'test', mounted() { this.qrcode(); }, props:{ width:{ type:Number, default(){ return 132 } }, height:{ type:Number, default(){ return 132 } }, // 二维码地址  url:{ type:String, default(){ return 'https://www.baidu.com' } } }, methods: { qrcode() { let qrcode = new QRCode('qrcode', { width: this.width, height: this.height, text: this.url, colorDark: "#000", colorLight: "#fff", }) }, } } </script> <style scoped> #qrcode { display: inline-block; } #qrcode img { width: 132px; height: 132px; background-color: #fff; padding: 6px; } </style>

3)使用组件

<template>
  <div>
    <div id="printMe">
      <div class="code">
        <p></p>
        <qrcode :url="url"></qrcode>
        <p>扫我去百度</p>
      </div>
    </div>
    <button v-print="'#printMe'">打印</button>
  </div>
</template> 

<script>
  import qrcode from '@/components/QrCode' export default { data() { return { url: 'http://www.baidu.com', } }, components: { qrcode }, } </script> <style scoped> .code { margin: 10px; text-align: center; width: 200px; height: 220px; border: 1px solid #000; } </style>

运行后,使用手机扫一扫就会跳转到百度页面。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM