Skip to content

useQRCode

一个用来生成二维码的 Hook 。

使用Demo

vue
<template>
  <div class="hello">
    <div> 二维码:</div>
    <img :src="state" alt="">
  </div>
</template>

<script lang="ts">
import { ref } from 'vue';
import { useQRCode } from "../../../dist/index.js";

const logo = require('../../assets/logo.png')

export default {
  
  setup() {
    const text = ref<string>('https://www.baidu.com/')
    // let text2 = 'https://www.baidu.com/';

    const state = useQRCode(text,{
      logo: logo.default,
      colorDark: '#000000'
    });

    setTimeout(()=>{
      text.value = 'https://www.acfun.cn/'
    },2000)

    return {
      state
    };
  },
};
</script>

usQRCide接受一个静态url,也可以是一个被Ref包裹的url,当Ref值发生变化时,二维码会跟随内容进行变化。

Api

type Text = Ref<string> | string;
interface useQRCodeOptions {
    onRenderingStart?: (qrCodeOptions: any) => void;
    onRenderingEnd?: (qrCodeOptions: any, dataURL: string) => void;
    [key: string]: any;
}
const useQRCode: (text: Text, options?: useQRCodeOptions | undefined) => Ref<string | undefined>;

Params

参数说明类型默认值
text需要生成二维码的url或textstring | Ref<string>-
options二维码配置项Options-

Options

Options配置项可以参考EasyQRCodeJS useQRCode的底层是使用了EasyQRCodeJS来作为二维码的实现。

Result

参数说明类型
statebase64格式的二维码图片string