- wxml节点显示不出来,无法调试?
开发者工具Nightly v1.03.2004262 今天早上刚升级了这个版本就这样。可以回退成上一个版本麽? [图片]
2020-04-29 - 轮播组件设置自动播放,interval时间设置为异步回调赋值,轮播图片一致出现抖动?
data: { background: ['demo-text-1', 'demo-text-2', 'demo-text-3'], indicatorDots: true, vertical: false, autoplay: false, circular: false, interval: '', duration: 500, previousMargin: 0, nextMargin: 0 },
2020-04-01 - 微信扫码唤不起小程序,跳页面?
这几天线下一直反馈,有的机型微信扫码后一直唤不起小程序,而是直接跳页面了。 [图片]这是线下扫码的图片, [图片]这是线下反馈的,我看到第一眼顶部蓝色的条,以为是支付宝扫的,后面确认就是微信扫的。
2020-03-28 - 扫码唤起小程序后,想断点,但是只能自己通过抓包工具看接口是否执行?
开发者工具中有没有提供什么相关工具可以像真机调试那样,看代码的执行顺序和断点? 还有添加体验者之后,体验者每次扫码唤起的小程序是不是,就是当前选为的体验版本(我这边每次唤起的版本都不一样,要怎么判断当前唤起的版本就是最新的版本?真的很烦?) 有过相关唤起经验的大佬还望不吝赐教,万分感谢
2020-03-21 - import 文件下如何获取到APP.JS下的全局变量?
有没有什么办法在import 文件下获取到APP.JS下的全局变量? 如果改成require的的形式是能获取到全局变量的,但是我Import的文件的代买是这样的? const app = getApp() console.log(app) export default class websocket { constructor({ heartCheck, isReconnection }) { // 是否连接 this._isLogin = false; // 当前网络状态 this._netWork = true; // 是否人为退出 this._isClosed = false; // 心跳检测频率 this._timeout = 10000; this._timeoutObj = null; // 当前重连次数 this._connectNum = 0; // 心跳检测和断线重连开关,true为启用,false为关闭 this._heartCheck = heartCheck; this._isReconnection = isReconnection; this._onSocketOpened(); } // 心跳重置 _reset() { clearTimeout(this._timeoutObj); return this; } // 心跳开始 _start() { let _this = this; this._timeoutObj = setInterval(() => { wx.sendSocketMessage({ // 心跳发送的信息应由前后端商量后决定 data: JSON.stringify({ "userId": 'd8b3ab8c-a206-40b4-beb4-29e9abb0045a', type:'heart_keep' }), success(res) { console.log(res) console.log("发送心跳成功"); }, fail(err) { console.log(err) _this._reset() } }); }, this._timeout); } // 监听websocket连接关闭 onSocketClosed(options) { wx.onSocketClose(err => { console.log('当前websocket连接已关闭,错误信息为:' + JSON.stringify(err)); // 停止心跳连接 if (this._heartCheck) { this._reset(); } // 关闭已登录开关 this._isLogin = false; // 检测是否是用户自己退出小程序 if (!this._isClosed) { // 进行重连 if (this._isReconnection) { this._reConnect(options) } } }) } // 检测网络变化 onNetworkChange(options) { wx.onNetworkStatusChange(res => { console.log('当前网络状态:' + res.isConnected); if (!this._netWork) { this._isLogin = false; // 进行重连 if (this._isReconnection) { this._reConnect(options) } } }) } _onSocketOpened() { wx.onSocketOpen(res => { console.log('websocket已打开'); // 打开已登录开关 this._isLogin = true; // 发送心跳 if (this._heartCheck) { this._reset()._start(); } // 发送登录信息 wx.sendSocketMessage({ // 这里是第一次建立连接所发送的信息,应由前后端商量后决定 data: JSON.stringify({ userId: 'd8b3ab8c-a206-40b4-beb4-29e9abb0045a', type:'heart_keep' }) }) // 打开网络开关 this._netWork = true; }) } // 接收服务器返回的消息 onReceivedMsg(callBack) { wx.onSocketMessage(msg => { if (typeof callBack == "function") { callBack(msg) console.log(msg) } else { console.log('参数的类型必须为函数') } }) } // 建立websocket连接 initWebSocket(options) { let _this = this; if (this._isLogin) { console.log("您已经登录了"); } else { // 检查网络 wx.getNetworkType({ success(result) { if (result.networkType != 'none') { // 开始建立连接 wx.connectSocket({ url: options.url, success(res) { if (typeof options.success == "function") { options.success(res) } else { console.log('参数的类型必须为函数') } }, fail(err) { if (typeof options.fail == "function") { options.fail(err) } else { console.log('参数的类型必须为函数') } } }) } else { console.log('网络已断开'); _this._netWork = false; // 网络断开后显示model wx.showModal({ title: '网络错误', content: '请重新打开网络', showCancel: false, success: function (res) { if (res.confirm) { console.log('用户点击确定') } } }) } } }) } } // 发送websocket消息 sendWebSocketMsg(options) { wx.sendSocketMessage({ data: options.data, success(res) { if (typeof options.success == "function") { options.success(res) } else { console.log('参数的类型必须为函数') } }, fail(err) { if (typeof options.fail == "function") { options.fail(err) } else { console.log('参数的类型必须为函数') } } }) } // 重连方法,会根据时间频率越来越慢 _reConnect(options) { let timer, _this = this; if (this._connectNum < 20) { timer = setTimeout(() => { this.initWebSocket(options) }, 3000) this._connectNum += 1; } else if (this._connectNum < 50) { timer = setTimeout(() => { this.initWebSocket(options) }, 10000) this._connectNum += 1; } else { timer = setTimeout(() => { this.initWebSocket(options) }, 450000) this._connectNum += 1; } } // 关闭websocket连接 closeWebSocket(){ wx.closeSocket(); this._isClosed = true; } }
2020-03-09 - wx.scanCode在红米5plus中获取不到链接中的参数?
wx.scanCode在红米5plus中获取不到链接中的参数 // 扫码绑定站点 scancode(e) { const that = this; wx.scanCode({ scanType: 'QR_CODE', success(res) { if (null == app.globalData.UNIQUENUM) { that.setData({ user_access: true }) if (res !== undefined) { let scan_urls = decodeURIComponent(res.result); that.setData({ shopId: cry.getQueryString(scan_urls, 'shopId'), }) } } else { if (res !== undefined) { let scan_urls = decodeURIComponent(res.result); that.setData({ shopId: cry.getQueryString(scan_urls, 'shopId'), }) console.log(that.data.shopId + '{{}}') let bidingParam = { UNIQUENUM: app.globalData.UNIQUENUM, OAUTHCODE: app.globalData.OAUTHCODE, phoneNum: app.globalData.phoneNum, shopId: that.data.shopId } api.request(apiName.courierBindingShop, bidingParam).then((res) => { if (res.data.code == "SUCCESS") { wx.showToast({ title: '绑定成功', duration: 2500, mask: true, icon: 'none', success() { setTimeout(function () { that.onPullDownRefresh() }, 1000) } }) } else { wx.showToast({ title: res.data.message, duration: 2500, mask: true, icon: 'none', }) } }) // 绑定站点 } else { wx.showToast({ title: '未获取到站点Id', duration: 3000, mask: true, icon: "none" }) } } }, }) } res.result返回的一直是null,其他机型正常。
2020-03-03 - 小程序是否有读取系统文件的接口?
这个小程序里面是有读取系统文件的接口的,我不知道是跳H5还是原生的。 但小程序api里面确实找不到读取系统文件的接口。[图片] [图片]
2019-10-08 - 全局对象保存
[图片]底部购物车里面保存了一个对象,这个购物车在多个页面共用 但是在保存这个对象的时候,不知道保存成全局变量好,还是用setstorage好? 有没有什么好的办法实时跟踪这个对象在不同页面的变化??? 求指教
2019-07-20 - 增值业务经营许可证
- 当前 Bug 的表现(可附上截图) - 预期表现 - 复现路径 - 提供一个最简复现 Demo 现在这个证书已经办理下来, 请问可以直接 上传了吗? 还是要等审核不通过的时候在申诉里面 添加?
2019-07-19 - 小程序二维码规则唤起小程序
后台配置的开发版二维码规则唤起小程序只有一个账号能唤起小程序;[图片] 后台成员已经配置了多个开发者,为什么只有第一个能唤起小程序?
2019-06-28