个人案例
- 白酒值得买
防控疫情,自主上报体温,单位统一收集!
体温上报扫码体验
- 新小店
小程序社交电商平台,一键授权,2分钟拥有自己的小程序社交电商平台
新小店-社交电商平台扫码体验
手写输入法不点击确认,不会触发bindinput事件,多加个bindblur事件
input输入框输入姓名信息后传给后端,最后一位字消失了?[图片] [图片] [图片] [图片] 问题描述 1.姓名总是无缘无故少最后一字 2.其间有加密算法,检查过没问题 3.测试时问题并没有重现 4.大多是安卓机出的问题 js代码: const util = require('../../utils/util.js') const config = require('../../config.js') var Aes = require('../../common/public.js'); var app = getApp(); Page({ /** * 页面的初始数据 */ data: { disabled: false, //按钮是否禁用 phone: '', //获取到的手机栏中的值 name: '', //获取姓名栏的值 data: '', idCard: '', //获取身份证栏的值 password: '', //获取密码栏的值 success: false, state: '', key: '', districtList: [{ district: '龙岗区', districtId: '201' }], districtIndex: 0, districtId: '201', district: '龙岗区', streetList: [], streetIndex: 0, streetId: '', street: '', communityList: [], communityIndex: 0, communityId: '', community: '', check: 0, streetIsClick: false, communityIsClick: false }, /** * 获取input框中的值 */ return_home: function (e) { wx.navigateTo({ url: '/pages/login/login', }) }, /** 姓名 */ handleInputName: function (e) { const self = this this.setData({ name: e.detail.value }) if (e.detail.value != "") { self.setData({ flagName: 'false', nameType: 'success' }) } else { self.setData({ flagName: 'true', nameType: 'warn' }) } }, /** 身份证号 */ handleInputIdCode: function (e) { const self = this this.setData({ idCard: e.detail.value }) if ((/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/.test(e.detail.value))) { self.setData({ flag: 'false', iconType: 'success' }) } else { self.setData({ flag: 'true', iconType: 'warn' }) } }, /** 电话号码 */ handleInputPhone: function (e) { const self = this; this.setData({ phone: e.detail.value }) if ((/^[1][3,4,5,7,8,9,2,6,0][0-9]{9}$/.test(e.detail.value))) { self.setData({ flagMobile: 'false', MobileType: 'success' }) } else { self.setData({ flagMobile: 'true', MobileType: 'warn' }) } }, /** 密码*/ handleNewChanges: function (e) { const { key, data } = this.data const self = this; this.setData({ key, data, password: e.detail.value }) if (e.detail.value.length >= 8 && e.detail.value.length <= 16) { self.setData({ flagPassword: 'false', passwordType: 'success' }) } else { self.setData({ flagPassword: 'true', passwordType: 'warn' }) } }, /** 确认密码*/ handleNewChangesAgain: function (e) { const { key, data } = this.data; const self = this; this.setData({ NewChangesAgain: e.detail.value }) if (this.data.password == e.detail.value && e.detail.value != "") { self.setData({ flagAgain: 'false', againType: 'success' }) } else { self.setData({ flagAgain: 'true', againType: 'warn' }) } }, /**选择区 */ bindDistrictChange: function (e) { this.setData({ //districtId: this.data.districtList[e.detail.value].id, districtId: '201', districtIndex: e.detail.value, district: '龙岗区' }); this.getStreetList(); }, /**选择街道 */ bindStreetChange: function (e) { console.log('picker发送选择改变,携带下标为', e.detail.value); console.log('picker发送发生改变,携带值为', this.data.streetList[e.detail.value].name); this.setData({ streetId: this.data.streetList[e.detail.value].id, streetIndex: e.detail.value, street: this.data.streetList[e.detail.value].name, streetIsClick: true }) this.getCommunityList(); }, /**选择社区 */ bindCommunityChange: function (e) { this.setData({ communityId: this.data.communityList[e.detail.value] ? this.data.communityList[e.detail.value].id : null, communityIndex: e.detail.value, community: this.data.communityList[e.detail.value] ? this.data.communityList[e.detail.value].name : null, communityIsClick: true }) }, //注册协议 greenCheck: function (e) { this.setData({ check: e.detail.value.length }) if (e.detail.value == "") { console.log("空欧诺个空") console.log(e.detail.value); } else { console.log("不空不空") } }, submit: function (e) { var that = this if (this.data.name == '') { wx.showToast({ title: '请输入姓名', icon: 'none', duration: 2000, }) } else if (this.data.idCard == '') { wx.showToast({ title: '请输入身份证号码', icon: 'none', duration: 2000 }) } else if (!(/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/.test(this.data.idCard))) { wx.showToast({ title: '身份证号码不正确', icon: 'none', duration: 2000 }) } else if (this.data.phone == '') { wx.showToast({ title: '请输入手机号', icon: 'none', duration: 2000 }) } else if (!(/^[1][3,4,5,7,8,9,6,0][0-9]{9}$/.test(this.data.phone))) { wx.showToast({ title: '请输入合法的手机号', icon: 'none', duration: 2000 }) } else if (this.data.password == '') { wx.showToast({ title: '请输入密码', icon: 'none', duration: 2000 }) return } else if (!(/^[a-zA-Z0-9]{8,16}$/.test(this.data.password))) { wx.showToast({ title: '密码长度为8-16位', icon: 'none', duration: 2000 }) return } else if (this.data.NewChangesAgain != this.data.password) { wx.showToast({ title: '两次密码不一致', icon: 'none', duration: 2000 }) return } else if (this.data.check == 0) { console.log("是否勾选" + this.data.check); wx.showToast({ title: '您还未同意用户注册协议', icon: 'none', duration: 2000 }) } else if (!this.data.streetIsClick || !this.data.communityIsClick) { wx.showToast({ title: '您还未选择所属街道和社区', icon: 'none', duration: 2000 }) } else { /**所有信息正确,开始注册 */ console.log("注册成功"); var data = { idCard: Aes.Encrypt(this.data.idCard), phone: Aes.Encrypt(this.data.phone), name: Aes.Encrypt(this.data.name), password: Aes.Encrypt(this.data.password), district: this.data.district, districtId: this.data.districtId, street: this.data.street, streetId: this.data.streetId, community: this.data.community, communityId: this.data.communityId, type: 'USER' }; // console.log('数据1212数据' + JSON.stringify(data)); wx.showModal({ title: '个人信息确认', content: '姓名:' + this.data.name + '\r\n身份证:' + this.data.idCard + '' + '\r\n手机号:' + this.data.phone + '' + '\r\n所属街道:' + this.data.streetList[this.data.streetIndex].name + '\r\n所属社区:' + this.data.communityList[this.data.communityIndex].name, confirmText: "确定", cancelText: "取消", success: function (res) { console.log(res); if (res.confirm) { wx.showLoading({ title: '正在发送请求', success: function () { app.postFormRequest(config.registerUrl, data).then(function (res) { if (res.data.errorCode == 400003) { wx.showModal({ title: '用户已存在,请重新注册', icon: 'loading', duration: 2000, }) } else { wx.showModal({ title: '注册成功,自动登录', icon: 'loading', duration: 2000, success: function () { var loginData = { username: data.phone, password: data.password, }; wx.showLoading({ title: '正在登录中...', mask: true, success: function () { app.postFormRequest(config.loginUrl, loginData).then(function (result) { app.postFormRequest(config.getMyInfoUrl).then(function (result) { // //获取用户信息 app.globalData.userInfo = result.data; wx.switchTab({ url: '../index/index', }) }); }); } }); } }); } }) } }) } else { } } }); } }, /** * 用户点击右上角分享 */ onShareAppMessage: function () { }, onLoad: function (event) { var that = this; wx.showToast({ title: '数据加载中', icon: 'loading', duration: 1500 }) that.getStreetList(); }, getStreetList: function () { var self = this; app.postRequest(config.getCommonDistrictListUrl, { "type": "DISTRICT" }).then(function (result) { var resultList = result.data.data.rows; self.data.districtId = resultList[0].id; app.getRequest(config.getCommonOrganizationsByParentId + '/' + self.data.districtId).then(function (result) { var resultList = result.data; var streetId = resultList[0].id; var street = resultList[0].name; self.setData({ streetList: resultList, streetId: streetId, street: street }); self.getCommunityList(); }); }); }, getCommunityList: function () { var self = this; app.getRequest(config.getCommonOrganizationsByParentId + '/' + self.data.streetId).then(function (result) { if (result.data.length > 0) { var resultList = result.data; var communityId = resultList[0].id; var community = resultList[0].name; self.setData({ communityList: resultList, communityId: communityId, community: community, communityIndex: 0 }); } else { self.setData({ communityList: [], communityId: '' }); } }); }, })
2019-02-12建议多留点时间给自己,微信服务器上面的时间跟你的服务器的时间不一定是对得上的
关于access_token 有效时长问题access_token 的有效期通过返回的 expire_in 来传达,目前是7200秒之内的值,中控服务器需要根据这个有效时间提前去刷新。在刷新过程中,中控服务器可对外继续输出的老 access_token,此时公众平台后台会保证在5分钟内,新老 access_token 都可用,这保证了第三方业务的平滑过渡; 这个7200秒之内的值,怎么理解?会小于这个值吗?有最小值么?
2019-02-12平均值的吧
加载性能监控中的启动总耗时是平均值吗?加载性能监控中的启动总耗时是计算平均值吗? 还是只统计启动加载最慢的用户?
2019-02-12会不会是taro自己的问题?
wx.openLocation,android机器打开地图页面,会先显示微信首页手机品牌: 一加3T android系统:8.0.0 [代码]wx.openLocation({[代码][代码] [代码][代码]latitude: +latitude,[代码][代码] [代码][代码]longitude: +longitude,[代码][代码] [代码][代码]name,[代码][代码] [代码][代码]address,[代码][代码] [代码][代码]});[代码]微信版本:7.0.3 bug描述: 在小程序里面调用wx.openLocation 期望:正常打开微信的地图页面 结果:先打开了微信的启动页(有个人站在月球遥看地球的页面),然后再打开地图页面 我们这边怀疑是因为我们小程序里面的图片太多,导致内存不够
2019-02-12老版本的?
chooseImages点击就报错什么情况?[图片]
2019-02-12组件有包在scroll-view里面吗?如果没有的话,那就不行
带wx:for 的页面,pageScrollTo三个回调都不执行[图片] [图片]
2019-02-12目测是不同系统对搜索词的理解不一样
小程序预上线后,IOS无法搜索到小程序APPid: wx3e1f43c19d4ccaf1 小程序名称:严选婚恋 问题描述:小程序预上线后,IOS无法搜索到小程序,但是安卓可以。求解。 微信版本 7.0.3 ios版本 12.1
2019-02-12代码片段跑不起来,会报websocket错误
BackgroundAudioManager 后台播放报错[图片] [图片] 按文档上的操作在 app.json 中配置 [代码]requiredBackgroundModes[代码] 属性,但是在后台状态下调用API播放音频报没权限,请问是怎么回事?
2019-02-12反正都是要提交的
我的小程序,明天才能做完,请问明天我提交审核,能给过吗?今天加班到这个点,有几个bug还没解决。过年的时候,要用到我这个小程序。求各位微信官方大神,宽容宽容时间吧。
2019-02-12https://developers.weixin.qq.com/community/operate/detail/1006 这个是官方的解答,你看下,好的话,点个赞,哈哈
小程序支付虚拟商品有没有准确的范围定义目前了解到的是小程序ios端禁止虚拟商品支付,定义是指购买非实物商品。比如:VIP会员、充值、课程、音视频等虚拟产品。 想问电子刊物、电子报、电子杂志类似这样的商品是否属于虚拟商品。 当用户产生购买行为: 通过小程序看是否符合规则? 通过其他渠道寄送发货是否符合规则?(如邮箱、电子商品通过其它载体现在寄送实物)
2019-02-12