国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > JavaScript > 正文

微信小程序動(dòng)態(tài)生成二維碼的實(shí)現(xiàn)代碼

2019-11-19 13:24:50
字體:
供稿:網(wǎng)友

效果圖如下:

實(shí)現(xiàn)

wxml

<!-- 存放二維碼的圖片--><view class='container'>  <image bindtap="previewImg" mode="scaleToFill" src="{{imagePath}}"></image></view><!-- 畫布,用來畫二維碼,只用來站位,不用來顯示--><view class="canvas-box">  <canvas hidden="{{canvasHidden}}" style="width: 686rpx;height: 686rpx;background:#f1f1f1;" canvas-id="mycanvas" /></view>

wxss

.container {  display: flex;  align-items: center;  justify-content: center;  width: 100%;  height: 100%;}.container image {  width: 686rpx;  height: 686rpx;  background-color: #f9f9f9;}.canvas-box {  position: fixed;  top: 999999rpx;  left: 0;}

js

var QR = require("../../../lib/qrcode.js");Page({  /**   * 頁(yè)面的初始數(shù)據(jù)   */  data: {    canvasHidden: false,    imagePath: '',  },  /**   * 生命周期函數(shù)--監(jiān)聽頁(yè)面加載   */  onLoad: function(options) {    //option為上個(gè)頁(yè)面?zhèn)鬟f過來的參數(shù)    var jiaoyanCode = 'sorry,jiaoyanCode is loss';    if (options) {      jiaoyanCode = options.jiaoyanCode;    }    console.log(jiaoyanCode);    var size = this.setCanvasSize(); //動(dòng)態(tài)設(shè)置畫布大小     this.createQrCode(jiaoyanCode, "mycanvas", size.w, size.h);     },  //適配不同屏幕大小的canvas  setCanvasSize: function() {    var size = {};    try {      var res = wx.getSystemInfoSync();      var scale = 750 / 686; //不同屏幕下canvas的適配比例;設(shè)計(jì)稿是750寬 686是因?yàn)闃邮絯xss文件中設(shè)置的大小      var width = res.windowWidth / scale;      var height = width; //canvas畫布為正方形      size.w = width;      size.h = height;    } catch (e) {      // Do something when catch error      console.log("獲取設(shè)備信息失敗" + e);    }    return size;  },  /**   * 繪制二維碼圖片   */  createQrCode: function(url, canvasId, cavW, cavH) {    //調(diào)用插件中的draw方法,繪制二維碼圖片    QR.api.draw(url, canvasId, cavW, cavH);    setTimeout(() => {      this.canvasToTempImage();    }, 1000);  },  /**   * 獲取臨時(shí)緩存照片路徑,存入data中   */  canvasToTempImage: function() {    var that = this;    //把當(dāng)前畫布指定區(qū)域的內(nèi)容導(dǎo)出生成指定大小的圖片,并返回文件路徑。    wx.canvasToTempFilePath({      canvasId: 'mycanvas',      success: function(res) {        var tempFilePath = res.tempFilePath;        console.log(tempFilePath);        that.setData({          imagePath: tempFilePath,          // canvasHidden:true        });      },      fail: function(res) {        console.log(res);      }    });  },  /**   * 點(diǎn)擊圖片進(jìn)行預(yù)覽   */  previewImg: function (e) {    var img = this.data.imagePath;    console.log(img);    wx.previewImage({      current: img, // 當(dāng)前顯示圖片的http鏈接      urls: [img] // 需要預(yù)覽的圖片http鏈接列表    });  },})

qrcode.js 可以去 這里 下載。

詳細(xì)源碼請(qǐng)查看 https://github.com/demi520/wxapp-qrcode

總結(jié)

以上所述是小編給大家介紹的微信小程序動(dòng)態(tài)生成二維碼的實(shí)現(xiàn)代碼,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)武林網(wǎng)網(wǎng)站的支持!

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 筠连县| 通榆县| 怀宁县| 临泉县| 灵璧县| 浪卡子县| 贡嘎县| 瓦房店市| 高碑店市| 黄陵县| 化隆| 章丘市| 德阳市| 湄潭县| 宜兰市| 修武县| 灌云县| 隆化县| 冀州市| 石屏县| 黑水县| 隆昌县| 曲阳县| 宣恩县| 泉州市| 大足县| 乃东县| 南皮县| 犍为县| 安西县| 左权县| 兴和县| 辽阳市| 包头市| 沿河| 舞钢市| 方山县| 临桂县| 和田市| 山西省| 山西省|