生成二维码

<template>
  <view class="page">
    <view class="qrcode-box">
      <view class="qrcode">
        <u-qrcode ref="code" canvas-id="code" :value="text" :size="size" :options="{
          foreground: {
            image: {
              src: '/static/logo.png',
              width: 0.25,
              height: 0.25,
              align: ['center', 'center'],
              anchor: [0, 0]
            }
          }
        }" @click="remake" @complete="complete($event)"></u-qrcode>
      </view>
      <text class="msg">这是一个带logo的二维码,logo处于二维码中间</text>
      <button class="save" type="primary" size="mini" @click="save('code')">保存</button>
    </view>
  </view>
</template>

<script>
  export default {
    data() {
      return {
        text: 'uQRCode',
        size: 200
      };
    },
    methods: {
      complete(e) {
        if (e.success) {
          console.log('生成成功');
        } else {
          console.log('生成失败');
        }
      },
      remake() {
        const ref = this.$refs['code'];
        ref.remake();
      },
      save() {
        uni.showLoading({
          title: '保存中',
          mask: true
        });
        const ref = this.$refs['code'];
        ref.save({
          success: res => {
            uni.hideLoading();
            uni.showToast({
              icon: 'success',
              title: '保存成功'
            });
          },
          fail: err => {
            uni.showToast({
              icon: 'none',
              title: JSON.stringify(err)
            });
          }
        });

      }
    }
  };
</script>

<style>
  .page {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .qrcode-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 30px;
    padding: 0 30px;
  }

  .qrcode {
    padding: 16px;
    background-color: #ffffff;
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.1);
    border-radius: 2px;
    overflow: hidden;
  }

  .msg {
    margin-top: 15px;
    font-size: 14px;
    color: #9a9b9c;
  }

  .save {
    margin-top: 10px;
  }
</style>
 

<template>
  <view class="page">
    <view class="qrcode-box">
      <view class="qrcode">
        <u-qrcode ref="code" canvas-id="code" :value="text" :size="size" :options="{
          foreground: {
            image: {
              src: '/static/logo.png',
              width: 0.25,
              height: 0.25,
              align: ['center', 'center'],
              anchor: [0, 0]
            }
          }
        }" @click="remake" @complete="complete($event)"></u-qrcode>
      </view>
      <text class="msg">这是一个带logo的二维码,logo处于二维码中间</text>
      <button class="save" type="primary" size="mini" @click="save('code')">保存</button>
    </view>
  </view>
</template>

<script>
  export default {
    data() {
      return {
        text: 'uQRCode',
        size: 200
      };
    },
    methods: {
      complete(e) {
        if (e.success) {
          console.log('生成成功');
        } else {
          console.log('生成失败');
        }
      },
      remake() {
        const ref = this.$refs['code'];
        ref.remake();
      },
      save() {
        uni.showLoading({
          title: '保存中',
          mask: true
        });
        const ref = this.$refs['code'];
        ref.save({
          success: res => {
            uni.hideLoading();
            uni.showToast({
              icon: 'success',
              title: '保存成功'
            });
          },
          fail: err => {
            uni.showToast({
              icon: 'none',
              title: JSON.stringify(err)
            });
          }
        });

      }
    }
  };
</script>

<style>
  .page {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .qrcode-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 30px;
    padding: 0 30px;
  }

  .qrcode {
    padding: 16px;
    background-color: #ffffff;
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.1);
    border-radius: 2px;
    overflow: hidden;
  }

  .msg {
    margin-top: 15px;
    font-size: 14px;
    color: #9a9b9c;
  }

  .save {
    margin-top: 10px;
  }
</style>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值