- 地图相关api与示例小程序执行结果不一致?forEach动态追加数组,各元素为同一个。
使用官方的地图示例中的代码,动态添加markers,但是执行结果添加的都是同一个点,与示例不同 const positions = [{ latitude: 39.914963, longitude: 116.403909, }, { latitude: 31.243006, longitude: 121.497171, }, { latitude: 23.099994, longitude: 113.326520, }] const markers = [] positions.forEach((p, i) => { console.log('i',i) const newMarker = Object.assign(marker, p) newMarker.id = i + 1 newMarker.label.content = `label ${i + 1}` console.log('newMarker',newMarker) markers.push(newMarker) }) console.log(markers) this.setData({ markers }) 输出结果 [图片]
2020-11-17 - 小程序挂载一段时间重新打开,调取语音识别,响应等待很长时间,后持续(超短间隔)返回结果
lifetimes: { attached: function() { manager.onRecognize((res) => { let result = res.result if (res.result.length > 20) { result = res.result.slice(0, 19) } this.setData({ isRecognize: true }) this.triggerEvent('onspeack', result) }) manager.onStart((res) => { console.log('recorder start', res.msg) }) manager.onStop((res) => { console.log('recorder stop', res.tempFilePath) this.setData({ hidden: true }) }) manager.onError((res) => { this.setData({ hidden: true, recognition: false }) }) }, detached: function() { console.log('detached') // 在组件实例被从页面节点树移除时执行 }, }, 在组件attached中注册组件,校验权限后调取 manager.start(),正常关闭或其他阻断时 manager.stop()。功能正常,但是小程序退出啊挂载大概10分钟之后,再次打开小程序,使用功能,需要等待好几分钟才能返回结果,而且是紧接着快速返回,之前断断续续调用插件返回的结果。等之前识别的内容返回结束后,功能正常,可以一边调用,一边识别。
2019-12-20