微信小程序扫条码源码是多少?怎样实现小程序扫条码?
为了让生活更加便捷,现在不管去哪消费,都随处可见扫描条形码或二维码付款,看上去的确很方便,那么怎样才能实现微信小程序扫二维码和条码呢?微信小程序扫条码源码是多少?
微信小程序扫条码开发工具介绍
这里提到的开发工具就是微信官方提供的IDE,虽然说现在也有了很多第三方的IDE或者插件,但是用起来感觉整合度不如官方版,索*不换了。新建小程序项目需要输入注册小程序时获取的小程序AppId。当然,还有一点需要注意,那就是设置小程序页面:开发环境不校验请求域名以及TLS版本这一项需要勾选上,因为微信只支持HTTPS的协议而且必须是指定域名,这让开发者使用localhost调试变的很麻烦,勾选此项之后就没有这种限制了。但只有在开发环境才可以。
微信小程序扫条码功能设计
如图:
微信小程序扫条码功能设计图
开发微信小程序扫条码源码:
首先是小程序目录结构
目录结构
pages:用于存放会员卡、个人信息和注册三个页面的文件
utils:放置公共js文件
app.js
var request = require('utils/requestfun.js');//封装了ajax的实现
App({
data: { //app.js中使用的data
},
globalData: { //全局使用的data
REQUEST_BASE_URL: '',//后台服务器域名
GET_VIP_BR_CODE: '',//请求条形码接口
GET_VIP_QR_CODE: '',//请求二维码接口
channelid: '',
vipcode: null,//初始设置会员卡号为null
wxuserkey: ''//后台返回的解密后信息
},
//获取会员信息
getVipInfo: function (cb) {
var that = this;
if (!that.globalData.vipcode) {
//调用登录接口
wx.login({//微信提供的login接口,可以获得openid及code
success: function (res) {
var code = res.code;
wx.getUserInfo({//微信提供的接口,使用code获取用户信息,包括unionid
success: function (res) {
var params = {
'channelid': that.globalData.channelid,
'code': code,
'res': res
}
request.mnsrequest(that.globalData.REQUEST_BASE_URL + 'weixin/miniappgetvipinfo.action', params, function (mnsres) {//请求项目后台服务器返回会员信息
if (mnsres.data) {
if (mnsres.data.returndata.isregistered) {
var vipcode = mnsres.data.returndata.vipcode;
that.globalData.vipcode = vipcode;
typeof cb == "function" && cb();
} else {
that.globalData.wxuserkey = mnsres.data.returndata.wxuserkey;//此处为后台返回的会员微信信息key,通过此key与后台通信
wx.redirectTo({//微信提供的路由接口,重定向。
url: '/pages/reg/reg'
})
}
} else {
return mnsres.errMsg;
}
})
}
})
}
})
} else {
typeof cb == "function" && cb();
}
}
})
这里强调几点:
微信路由接口有三个,分别是wx.redirectTo、wx.navigateTo和wx.switchTab
wx.navigateTo全局最多调用5次
如果某页面设置为tab页,则只支持wx.switchTab,不支持其他两种路由方式访问
app.json
app.json是全局配置文件。
{
"pages": [//所有页面都需要在这里注册后才能使用
"pages/index/index",
"pages/vipinfo/vipinfo",
"pages/reg/reg"
],
"window": {//设置小程序窗体样式及显示文字
"backgroundTextStyle": "light",
"navigationBarBackgroundColor": "#fff",
"navigationBarTitleText": "会员卡",
"navigationBarTextStyle": "black"
},
"tabBar": {//设置Tab页样式
"list": [//设置Tab页列表,最大支持5个
{
"pagePath": "pages/index/index",
"text": "会员卡",
"iconPath": "pages/img/vip.png",
"selectedIconPath": "pages/img/vip2.png"
},
{
"pagePath": "pages/vipinfo/vipinfo",
"text": "个人信息",
"iconPath": "pages/img/info.png",
"selectedIconPath": "pages/img/info2.png"
}
],
"borderStyle":"white"
},
"networkTimeout": {
"request": 10000,
"downloadFile": 10000
},
"debug": true
}
app.wxss
app.wxss控制全局样式。
/**app.wxss**/
page{//需要设置page高度,才能正常让空间高度显示为100%
height: 100%;
}
.container {
font-family: 'Franklin Gothic Medium', 'Arial Narrow';
/*border: 1px solid black;*/
background-color: #48c23d;
width: 100%;
height: 100%;
display: flex;//小程序推荐使用flex布局
flex-direction: column;
align-items: center;
justify-content: flex-end;
box-sizing: border-box;
overflow: hidden;
padding: 50rpx;
}
.reg_container{
font-family: 'Franklin Gothic Medium', 'Arial Narrow';
width: 100%;
height: 100%;
display: flex;
flex-direction: column;
align-items: flex-start;
justify-content: flex-start;
box-sizing: border-box;
overflow: hidden;
padding: 50rpx;
}
.info_container{
font-family: 'Franklin Gothic Medium', 'Arial Narrow';
font-size: 30rpx;
width: 100%;
height: 100%;
display: flex;
flex-direction: column;
align-items: flex-start;
justify-content: flex-start;
box-sizing: border-box;
overflow: hidden;
padding: 50rpx;//小程序推荐的自适应长度单位
}
reg.wxml
wxml为微信创造的xml标记语言。
//view可以简单理解为html中的块状元素
手机号:
//使用bind绑定事件
验证码:
{{vertical.value}}//使用双大括号语法进行数据绑定,但只支持单向绑定,若要实现双向绑定,需要借助事件
以上就是微信小程序扫条码的实现步骤以及微信小程序扫条码源码了,大家对照这个步骤,复制所需要的小程序源码,应该也能自己进行开发小程序扫码功能,快来试试吧,更多资料请在微信小程序商店进行搜索。
小程序参数二维码生成怎么弄
小程序二维码php开发教程
微信小程序二维码失效怎么办?