js动态生成二维码

摘要:
“);$.qrcode;II.在Vue-cli项目画布中动态生成QR代码”˃#canvas{width:80%!important;}5.定义在js中生成QR码的方法,并调用//使用qrcode()动态生成QR码{//。您可以添加变量this。QueryDetail='http://www.kspxzx.com/#/guard '+"?
一、使用jquery.qrcode生成二维码

1、首先在页面中加入jquery库文件和qrcode插件

<script type="text/javascript" src="jquery.js"></script> 
<script type="text/javascript" src="jquery.qrcode.min.js"></script> 

2、在页面中需要显示二维码的地方加入以下代码:

<div id="code"></div> 

3、调用qrcode插件。支持canvas和table两种方式进行图片渲染

canvas方式:

$('#code').qrcode("http://www.baidu.com"); //任意字符串 

table方式:

$("#code").qrcode({ 
    render: "table", //table方式 
     200, //宽度 
    height:200, //高度 
    text: "www.helloweba.com" //任意内容 
}); 

4、如果生成的二维码内容包含文字,需要把字符串转换成UTF-8

定义转化方法:

function toUtf8(str) {    
    var out, i, len, c;    
    out = "";    
    len = str.length;    
    for(i = 0; i < len; i++) {    
        c = str.charCodeAt(i);    
        if ((c >= 0x0001) && (c <= 0x007F)) {    
            out += str.charAt(i);    
        } else if (c > 0x07FF) {    
            out += String.fromCharCode(0xE0 | ((c >> 12) & 0x0F));    
            out += String.fromCharCode(0x80 | ((c >>  6) & 0x3F));    
            out += String.fromCharCode(0x80 | ((c >>  0) & 0x3F));    
        } else {    
            out += String.fromCharCode(0xC0 | ((c >>  6) & 0x1F));    
            out += String.fromCharCode(0x80 | ((c >>  0) & 0x3F));    
        }    
    }    
    return out;    
} 

在生成的时候调用转化方法:

var str = toUtf8("字符串测试!"); 
$('#code').qrcode(str); 
二、在Vue-cli项目中动态生成二维码

1、引入qrcode--------npm install qrcode

2、在main.js中引入

import QRCode from 'qrcode'    //定义生成二维码组件

3、在需要使用到生成二维码的组件中引入

import QRCode from 'qrcode'     //引入生成二维码组件

4、在HTML中定义生成的位置,注意添加样式

<template>
  <div id="query">
    <h1>二维码:</h1>
    <canvas id="canvas"></canvas>
  </div>

</template>

  #canvas{
    width: 80%!important;
    height: auto!important;
  }

5、在js中定义生成二维码的方法并调用

    //动态生成二维码
    useqrcode(){ 
//生成的二维码内容,可以添加变量
    this.QueryDetail='http://www.kspxzx.com/#/guard'+"?unique_code="+this.QueryDetail;var canvas = document.getElementById('canvas') QRCode.toCanvas(canvas, this.QueryDetail, function (error) { if (error) console.error(error) console.log('success!'); }) }

免责声明:文章转载自《js动态生成二维码》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇H3C交换机修改时间项目总结72:Arthas的常用指令使用下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

string 转 LPCTSTR

(1)在ANSI字符集下 LPCTSTR想当于LPCSTR,当中L指long。P指Point,C指Const。在程序中能够直接用char*类型的数据对LPCSTR进行赋值,用下述语句: LPCSTR a1= "abc"; string a2 = "abcde"; a1 = a2.c_str(); (2)在Unicode字符集下 LPCTSTR相当于LPC...

说说接口封装

今天给同事封装了一个接口,说起接口封装的事情,其实其实很有的聊。很多时候,说一个服务好,一个服务烂,实际上都是在吐槽服务队外暴露的接口好坏。不管什么语言,封装接口,抽象起来,就是由一个函数名,若干个参数,若干个返回值组成的。封装的好坏,就在这几个上面。 函数名 首先是函数名。函数名的好坏很明显,我的观点,是否简单,不重复。比如在一个User类中你封装一个...

Java接口自动化测试实战001----get、post方法实现与封装

一、接口测试 1、接口测试流程 根据接口文档编写测试用例 准备测试数据 准备工具(测试工具or接口测试代码) 填写接口信息(接口地址、请求方式等) 准备请求头数据(如果有必要,比如:cookies,Content-Type等) 发起请求,获取接口的相应信息(状态码、响应报文、或者某些特殊的响应头数据) 根据报文判断实际与预期结果是否一致 2、HTTP请...

java解决大文件断点续传

第一点:Java代码实现文件上传 FormFile file = manform.getFile(); String newfileName =null; String newpathname =null; String fileAddre ="/numUp"; try { InputStream stream = file.getInputStream(...

EasySharding.EFCore 如何设计使用一套代码完成的EFCore Migration 构建Saas系统多租户不同业务需求且满足租户自定义分库分表、数据迁移能力?

下面用一篇文章来完成这些事情 多租户系统的设计单纯的来说业务,一套Saas多租户的系统,面临很多业务复杂性,不同的租户存在不同的业务需求,大部分相同的表结构,那么如何使用EFCore来完成这样的设计呢?满足不同需求的数据库结构迁移 这里我准备设计一套中间件来完成大部分分库分表的工作,然后可以通过自定义的Migration 数据库文件来迁移构建不同的租户数据...

前端小白之每天学习记录----js简单的组件封装

设计模式:是解决问题的模板 关于设计模式,可以阅读汤姆大叔的博文http://www.cnblogs.com/TomXu/archive/2011/12/15/2288411.html 这里简单介绍两种设计模式: 1.单例模式:单例就是保证一个类只有一个实例       eg:在JavaScript里,实现单例的方式有很多种,其中最简单的一个方式是使用对象...