1、下載barcode.js,新建一個文件wxbarcode.js用於計算條形碼的寬高,以自適應不同手機屏顯示
var barcode = require('./barcode'); function convert_length(length) { return Math.round(wx.getSystemInfoSync().windowWidth * length / 750); } function barc(id, code, width, height) { barcode.code128(wx.createCanvasContext(id), code, convert_length(width), convert_length(height)) //參數1:頁面接收生成條形碼的容器 參數2:需要生成條形碼的code 參數3:條形碼的寬度 參數4:條形碼的高度 } module.exports = { barcode: barc }
2、在需要使用的頁面引入wxbarcode.js
const wxbarcode = require('wxbarcode.js');
//在拿到生成條形碼的id后調用
wxbarcode.barcode('barcode', code, 490, 80); //注意在wxml中設置一個如代碼id為barcode的wxml容器
3、注意:
由於barcode.js的條形碼的位置實際是通過獲取頁面相關元素的高度后定位而得到的位置,
所以如果在條形碼元素的前面,有通過手動計算后得到高度的元素,那么條形碼的位置可能會出現偏差。
所以條形碼前面的圖片元素不能使用mode='widthFix'屬性,元素不能通過計算得到高度,最好通過wxss設置固定高。
