功能需求: 输入链接或文字,生成二维码

效果演示:

输入网址

使用手机扫码

输入文字

扫描二维码

好,现在我们开始编程,简单介绍一下思路:找到一个免费的二维码生成api接口,进行对接

我用到的是一个叫FREE API的网站,里面有许多免费的接口,初学前端的友友们可以用这个网站进行练习。

网址:https://www.free-api.com/

接下来我们找到二维码生成的接口技术文档,进入官方文档

通过接口文档,我们知道,需要写一个axios请求,然后传入text和size参数

generaterQRcode() {//生成二维码的axios请求this.axios({methods: "get",url: "https://api.oick.cn/qrcode/api.php",//接口地址params: {text:"早上好",//参数,这里是静态的size:200,},}).then((res) => {console.log('点击成功');let imgurl=res.data;this.QRcode.imgurl=imgurl;//图片链接});},

但是这样会出现一个问题

后端传回来的是一个图片,而不是一个URL,所以我们需要在请求头加上

responseType: "blob"

然后调用自带的window.URL.createObjectURL()函数来创建URL

let imgurl = window.URL.createObjectURL(res.data);
this.QRcode.imgurl = imgurl;

完整代码

generaterQRcode() {this.axios({methods: "get",url: "https://api.oick.cn/qrcode/api.php",responseType: "blob",params: {text: "早上好",size:200,},}).then((res) => {console.log('点击成功');let imgurl = window.URL.createObjectURL(res.data);this.QRcode.imgurl = imgurl;});},

然后为了输入文字或链接生成二维码,我们需要写一个输入框,和一个生成按钮

html部分

<div class="qr"><!-- 这里我用到了at-ui框架,自己用html,css写也是可以实现的的 --><at-card style="width: 600px"><h4 slot="title">二维码生成</h4><div slot="extra" class="generatecode"><at-inputv-model="QRcode.inputValue"placeholder="请输入文字或者网页链接生成二维码"class="inputcode"></at-input><!-- 将输入框的值与QRcode.inputValue进行绑定 --><at-button type="primary" class="btn" @click="generaterQRcode">生成</at-button><!-- 点击按钮触发事件 --></div><div class="QRcodeContent"><img :src="QRcode.imgurl" alt="" /><!--显示生成的图片 --><span v-if="QRcode.imgurl">请使用手机扫码</span><!-- 如果QRcode.imgurl有值就显示请用手机扫码的提示 --></div></at-card>
</div>

css部分

<style lang='scss' scoped>
.qr{margin-left: 300px;
}
.generatecode{height: 48px;display: flex;flex-direction: row;align-items: center;.inputcode{width:300px;}.btn{margin-left: 10PX;}
}
.QRcodeContent{display: flex;flex-direction: row;justify-content: space-around;align-items: center;
}

接下来,我们将输入框的值赋给api的text参数

  generaterQRcode() {this.axios({methods: "get",url: "https://api.oick.cn/qrcode/api.php",responseType: "blob",params: {text: this.QRcode.inputValue,size:200,},}).then((res) => {console.log('点击成功');console.log(res);let imgurl = window.URL.createObjectURL(res.data);this.QRcode.imgurl = imgurl;});},

实现效果

完整代码

<template><div class="qr"><at-card style="width: 600px"><h4 slot="title">二维码生成</h4><div slot="extra" class="generatecode"><at-inputv-model="QRcode.inputValue"placeholder="请输入文字或者网页链接生成二维码"class="inputcode"></at-input><at-button type="primary" class="btn" @click="generaterQRcode">生成</at-button></div><div class="QRcodeContent"><img :src="QRcode.imgurl" alt="" /><span v-if="QRcode.imgurl">请使用手机扫码</span></div><!--  --></at-card></div>
</template><script>
export default {name: "",data() {return {QRcode: {imgurl: "",inputValue: "",},};},methods: {generaterQRcode() {this.axios({methods: "get",url: "https://api.oick.cn/qrcode/api.php",responseType: "blob",params: {text: this.QRcode.inputValue,size:200,},}).then((res) => {console.log('点击成功');console.log(res);let imgurl = window.URL.createObjectURL(res.data);this.QRcode.imgurl = imgurl;});},},
};
</script>
<style lang='scss' scoped>
.qr{margin-left: 300px;
}
.generatecode{height: 48px;display: flex;flex-direction: row;align-items: center;.inputcode{width:300px;}.btn{margin-left: 10PX;}
}
.QRcodeContent{display: flex;flex-direction: row;justify-content: space-around;align-items: center;
}
</style>

前端(Vue)怎么实现二维码生成相关推荐

  1. 前端vue uni-app基于uQRCode封装简单快速实用全端二维码生成插件

    快速实现基于uQRCode封装简单快速实用全端二维码生成插件; 下载完整代码请访问uni-app插件市场地址:https://ext.dcloud.net.cn/plugin?id=12677 效果图 ...

  2. vue二维码生成插件 - npm安装篇

    vue二维码生成插件 - npm安装篇 具体使用: 1. 安装: npm install vue-qr --save 2. 引入和声明 //在需要生成二维码的文件中引入比如qrCode.vue imp ...

  3. uniapp中根据URL链接生成二维码(适用所有Javascript运行环境的前端应用),保存二维码到本地相册。

    推荐一款适用所有Javascript运行环境的二维码生成组件. uQRCode是一款基于Javascript环境开发的二维码生成插件,适用所有Javascript运行环境的前端应用和Node.js应用 ...

  4. vue 在线生成二维码 二维码生成背景下载

    安装 引用 3.注入 app.vue 这里只是生成二维码 生成二维码 js 这里是需要二维码 并且与另一张合成一张image的! 上代码

  5. 二维码生成【前端,后端】

    二维码生成,可以在后端生成图片,存储在服务器,然后把虚拟路径返回到前端,也可以把数据传输到前端,通过前端框架生成在线二维码,在前端生成二维码不占用内存,但是网络原因会影响显示. 一.后端: Strin ...

  6. vscode中vue项目,QRCode二维码生成

    昨天突然说让我写个简单的二维码生成页面 1.首先肯定要打开我们的项目,然后安装QRCode npm install qrcodejs2 2.然后新建一个文件(比如index.vue) 在文件最上面写上 ...

  7. vue二维码生成可自定义logo

    代码已上传至github github代码地址:https://github.com/Miofly/mio.git <template xlang="wxml">< ...

  8. vue二维码生成和打印

    二维码生成 存放二维码 <div id="qrCode" class="qrCode"><div id='code' class=" ...

  9. 二维码生成及下载(前端)

    最近在项目中用到二维码生成及下载,做个笔记记录下 首先引入js文件, 这是在网上找的 <script src="http://cdn.staticfile.org/jquery.qrc ...

最新文章

  1. 算法基础知识科普:8大搜索算法之红黑树(上)
  2. UpSetR 高级参数使用教程
  3. 青藏高原matlab掩膜,1982~2000年青藏高原地表反照率时空变化特征
  4. 多用户商城系统 KgMall2.1公布
  5. linux7 rpmdb 修复,Linux[CentOS 7]rpmdb open failed错误修复
  6. WIN10系统如何取消任务栏处的窗口缩略图
  7. typora插入代码设置_Typora基本功能介绍
  8. OpenGL 入门第一课 视窗以及三角形
  9. dart开发Android服务,关于android:在Flutter应用中使用由swagger生成的Dart代码生成的Web服务...
  10. 鸿蒙应用开发--组件
  11. Elasticsearch增删改查 之 —— mget多文档查询
  12. tomcat配置war包解压地址
  13. 浏览器html中加入word,web网页中加载word
  14. drawline java_Java代码g.drawLine(100,100,100,100)的功能是()
  15. android集成环信客服云_2019.6.12
  16. 有备无患——数据中心基础设施备品备件管理
  17. SwiftUI应用开屏广告界面项目(一)
  18. nacl溶解度_科普下氯化钠溶解度
  19. 无源定位入门(三)AOA(2)测角代码(MUSIC和ROOT—MUSIC)
  20. 中国互联网金融举报信息平台将“代币发行融资”列入举报范围

热门文章

  1. Aja检验用户名是否存在
  2. Windows10输入法添加自定义短语
  3. 泰勒公式理解 数学基础
  4. 基于多层特征选择的固废焚烧过程二噁英排放浓度软测量
  5. 因病或非因工死亡是否有丧葬补助金和抚恤金
  6. iphone实用小技巧
  7. iFun Factory的 游戏服务器
  8. Magento Order Search使用api查询订单
  9. 2010年九寨沟旅游攻略
  10. 提高组织的的凝聚力,实现企业高绩效增加