UNPKG

gxd-vue-library

Version:

依赖与element Ui插件库,聚福宝福利PC端插件库

52 lines (41 loc) 1.28 kB
'use strict'; import qrCode from 'qrcode' /** * @description 获取二维码base64图片 * @param options {{text: string}} * @param options.text {String} 生产二维码文本数据 * @param options.width {Number} 生成图片资源大小 默认:300 * @param options.quality {Number} 生成图片资源质量 0~1 默认: 0.9 * @param options.color {Object} 生成图片文件样式 * @param options.color.dark {Object} 生成二维码颜色图片内容颜色 * @param options.color.light {Object} 生成二维码颜色图片空内容区域颜色 */ export default function (options) { if(!options.text) { console.warn(`options.text=${options.text},文本不能为空`) } let color = { dark: '#c60', //二维码颜色 light: '#f8f8f8', //二维码空区域颜色 }; let opt = { errorCorrectionLevel: 'H', type: 'image/png', width: 400, scale: 1, margin: 3, quality: 0.9, }; options = Object.assign({}, opt, options); if(!options['color']) options['color'] = color; return new Promise((resolve, reject)=>{ qrCode.toDataURL(options.text, options) .then(url => { resolve(url) }) .catch(err => { reject('生成文件失败'); console.error(err) }) }) }