这是无法避免的,布局的时候可以使用flex来排列
小程序rpx的精度问题x - x - x ..... x代表组价,-代表border,由于rpx转px的精度问题,当 - 很小的时候,x和x之间的距离明显不一样,甚至会出现x和x连在一起的情况
2018-09-18https://developers.weixin.qq.com/miniprogram/dev/api/analysis-visit.html 可以获取日,周,月的访问趋势阿
小程序的数据分析接口周,月统计是一周的汇总如何解析成折线图- 需求的场景描述(希望解决的问题) 小程序的数据分析接口周,月统计是一周的汇总如何解析成折线图 自己开发的后台需要统计这样的数据 以图表折线图方式显示, 但是返回的数据为一周数据的总和 这...咋显示 [代码]{[代码][代码]"list"[代码][代码]:[{[代码][代码]"ref_date"[代码][代码]:[代码][代码]"20180910-0180916"[代码][代码],[代码][代码]"session_cnt"[代码][代码]:446,[代码][代码]"visit_pv"[代码][代码]:2206,[代码][代码]"visit_uv"[代码][代码]:227,[代码][代码]"visit_uv_new"[代码][代码]:132,[代码][代码]"stay_time_uv"[代码][代码]:131.9912,[代码][代码]"stay_time_session"[代码][代码]:67.1794,[代码][代码]"visit_depth"[代码][代码]:2.361[代码][代码]}]}[代码] - 希望提供的能力 提供周统计或月统计的json数据结合 精确到每一天的集合
2018-09-17用你的代码片段跑出来没有faild audits啊
开发者工具体验评分?一个未绑定的变量是什么- 需求的场景描述(希望解决的问题) [图片] 一直调试不出怎么就未绑定了?
2018-09-17getProgress里setInterval函数delay时间写个非0的值就可以了
【bug】苹果手机progress组件percent属性值动态数据渲染无效代码片段:wechatide://minicode/xBrX0lmJ7D2G percent="{{progressPercent}}" ,progressPercent 在苹果手机上不显示进度条进度。,只有白色背景,安卓正常。 只有在percent = "20" 一个实际数字,苹果手机上才显示进度条的进度。 图片对比: 苹果手机如下: [图片] 安卓手机(按需求正常显示): [图片] 以下是源码: [代码]<[代码][代码]progress[代码] [代码]class[代码][代码]=[代码][代码]'progress'[代码] [代码]percent[代码][代码]=[代码][代码]"{{progressPercent}}"[代码] [代码]stroke-width[代码][代码]=[代码][代码]"{{progressHeight}}"[代码] [代码]activeColor[代码][代码]=[代码][代码]"#09BB07"[代码] [代码]backgroundColor[代码][代码]=[代码][代码]"#fff"[代码] [代码]animation[代码][代码]=[代码][代码]"{{progressAnimation}}"[代码] [代码]/>[代码] [代码]//获取进度条加载进度[代码] [代码] [代码][代码]getProgress:[代码][代码]function[代码][代码](){[代码] [代码] [代码][代码]//页面加载进度条[代码] [代码] [代码][代码]let that = [代码][代码]this[代码][代码];[代码] [代码] [代码][代码]progress = setInterval([代码][代码]function[代码] [代码]() {[代码] [代码] [代码][代码]let showPage = that.data.showPage[代码] [代码] [代码][代码]let progressPercent = that.data.progressPercent;[代码] [代码] [代码][代码]if[代码] [代码](showPage){[代码] [代码] [代码][代码]progressPercent = 100 [代码] [代码] [代码][代码]}[代码][代码]else[代码][代码]{[代码] [代码] [代码][代码]progressPercent++;[代码] [代码] [代码][代码]}[代码] [代码] [代码] [代码] [代码][代码]//当进度条为100时清除定时任务[代码] [代码] [代码] [代码] [代码][代码]if[代码] [代码](progressPercent >= 100) {[代码] [代码] [代码][代码]clearInterval(progress);[代码] [代码] [代码][代码]}[代码] [代码] [代码][代码]//并且把当前的进度值设置到progress中[代码] [代码] [代码][代码]that.setData({[代码] [代码] [代码][代码]progressPercent: progressPercent[代码] [代码] [代码][代码]})[代码] [代码] [代码][代码]});[代码] [代码] [代码][代码]},[代码] [代码] [代码][代码]//隐藏进度条动画[代码] [代码] [代码][代码]progressAnimation:[代码][代码]function[代码][代码](){[代码] [代码] [代码][代码]let that = [代码][代码]this[代码][代码];[代码] [代码] [代码][代码]var[代码] [代码]animation = wx.createAnimation({[代码] [代码] [代码][代码]duration: 500,[代码] [代码] [代码][代码]timingFunction: [代码][代码]'ease'[代码][代码],[代码] [代码] [代码][代码]})[代码] [代码] [代码][代码]this[代码][代码].animation = animation[代码] [代码] [代码][代码]animation.opacity(0).height(0).step()[代码] [代码] [代码][代码]this[代码][代码].setData({[代码] [代码] [代码][代码]progressAnimation: animation.export()[代码] [代码] [代码][代码]})[代码] [代码] [代码][代码]setTimeout([代码][代码]function[代码][代码](){[代码] [代码] [代码][代码]that.setData({[代码] [代码] [代码][代码]progressHeight: 0[代码] [代码] [代码][代码]})[代码] [代码] [代码][代码]},1000)[代码] [代码] [代码][代码]}[代码] [代码] [代码] 各路大神帮忙给看看如何解决这一问题,感激!!
2018-09-12setData设置经纬度、缩放都会触发regionChange,设置相同的值也会触发,这是符合预期的。 因此regionChange里设置经纬度,会导致无限触发。
安卓,IOS组件两者不同就这样子,当我在js问题setData了<map>组件的经纬度之后,居然会触发我拖动地图的事件。 在安卓手机上setData不会触发我拖动地图事件。 但是苹果手机上会触发。 [图片] HTML [图片]我的JS文件。 [图片]循环输出了,完蛋。。 还有我上次提出的。当我把调试库的版本调低后,模拟机上的IOS 当setData之后是不会触发拖动事件。 但是真机上会触发。。不知道怎么破= =...有没有人试过,哪个调试库,setData是不会触发拖动事件的。
2018-08-29你好,地图的iconPath目前不支持svg图片。
地图组件iconPath显示问题iconPath使用的svg图片,在开发工具中预览显示正常,发布后真机上都显示的是默认图标
2018-07-29你的外部字体文件返回的是二进制流类型么,就是在浏览器中打开会直接下载文件
wx.loadFontFace(OBJECT)安卓真机加载失败wx.loadFontFace(OBJECT)安卓真机加载失败console.log结果 {cbID:1,status:"error"} 开发者工具基础库 2.2.0 安卓手机微信版本最新 6.6.7
2018-07-26你这样做应该没有什么区别,还是一次性传入了所有的数据到markers里面。尝试下这样做: this.setData({markers: marker1}); this.setData({markers: [...marker1, ...marker2]}); this.setData({markers: [...marker1, ...marker2, ...marker3]}); 实现分批添加marker,之前添加过的marker不会重复添加,每次setData之间可以添加setTimeout。 这种方式跟你通过接口分批次获取数据差不错
关于map组件设置markers的问题- 需求的场景描述(希望解决的问题) [代码]<[代码][代码]map[代码] [代码]class[代码][代码]=[代码][代码]'map'[代码] [代码]id[代码][代码]=[代码][代码]'map'[代码] [代码]bindmarkertap[代码][代码]=[代码][代码]'bind_mkr_tap'[代码] [代码]bindcallouttap[代码][代码]=[代码][代码]'bind_mkr_callout_tap'[代码] [代码]bindtap[代码][代码]=[代码][代码]'bind_map_tap'[代码] [代码]longitude[代码][代码]=[代码][代码]"{{longitude}}"[代码] [代码]latitude[代码][代码]=[代码][代码]"{{latitude}}"[代码] [代码]markers[代码][代码]=[代码][代码]"{{markers}}"[代码] [代码]style[代码][代码]=[代码][代码]"height:{{map_height}}px;"[代码] [代码]show-location>[代码]</map> [代码][代码][代码]//获取点数据[代码][代码] [代码][代码]wx.request({[代码][代码] [代码][代码]url: getApp().data.net_config.service.host,[代码][代码] [代码][代码]header: getApp().data.net_config.service.header,[代码][代码] [代码][代码]method: [代码][代码]'POST'[代码][代码],[代码][代码] [代码][代码]data: {[代码][代码] [代码][代码]'pg'[代码][代码]: [代码][代码]'rcjg'[代码][代码],[代码][代码] [代码][代码]'type'[代码][代码]: [代码][代码]'ini_data'[代码][代码] [代码][代码]},[代码][代码] [代码][代码]success: [代码][代码]function[代码] [代码](res) {[代码] [代码] [代码][代码]if[代码] [代码](getApp().data.util.json_state(res.data.state)) {[代码][代码] [代码][代码]let d = res.data.data[代码] [代码] [代码][代码]var[代码] [代码]index = [代码][代码]0[代码][代码] [代码][代码]for[代码] [代码]([代码][代码]var[代码] [代码]Key [代码][代码]in[代码] [代码]d) {[代码][代码] [代码][代码]//let markers_new = [];[代码][代码] [代码][代码]let g = map.bd09_To_Gcj02(d[Key].lng, d[Key].lat)[代码][代码] [代码][代码]let content = [代码][代码]"档案号:\n\r"[代码] [代码]+ d[Key].dah + [代码][代码]"\n\r店名:\n\r"[代码] [代码]+ d[Key].name[代码] [代码] [代码][代码]let iconPath = map.get_mkr_ico(d[Key].lx);[代码][代码] [代码][代码]//console.log(g)[代码][代码] [代码][代码]let markers_new = {[代码][代码] [代码][代码]id: d[Key].Id,[代码][代码] [代码][代码]mark_index: index,[代码][代码] [代码][代码]dah: d[Key].dah,[代码][代码] [代码][代码]name: d[Key].name,[代码][代码] [代码][代码]lx: d[Key].lx,[代码][代码] [代码][代码]callout: {[代码][代码] [代码][代码]content: content,[代码][代码] [代码][代码]display: [代码][代码]'BYCLICK'[代码][代码],[代码][代码] [代码][代码]textAlign: [代码][代码]'left'[代码][代码],[代码][代码] [代码][代码]borderRadius: [代码][代码]50[代码][代码] [代码][代码]},[代码][代码] [代码][代码]latitude: g[[代码][代码]1[代码][代码]],[代码][代码] [代码][代码]longitude: g[[代码][代码]0[代码][代码]],[代码][代码] [代码][代码]iconPath: iconPath,[代码][代码] [代码][代码]width: [代码][代码]20[代码][代码],[代码][代码] [代码][代码]height: [代码][代码]20[代码][代码] [代码][代码]}[代码][代码] [代码][代码]let pr = [代码][代码]"markers["[代码] [代码]+ index + [代码][代码]"]"[代码][代码] [代码][代码]let pr_list = [代码][代码]"markers_list["[代码] [代码]+ index + [代码][代码]"]"[代码][代码] [代码][代码]console.log(index)[代码][代码] [代码][代码]that.setData({ [pr]: markers_new, [pr_list]: markers_new })[代码][代码] [代码][代码]index++[代码][代码] [代码][代码]}[代码]因为点的数据有3000+条,大小超过了setData的限制,直接用that.setData({ markers: markers_new, markers_list: markers_new })会出问题,所以以上采用按数组一个一个设置。 实际效果是设置一个会全部重新加载一遍点,3000个点耗时1小时都还没完全加载。 换一个思路,将获取到的数据以1000个为一组进行分组,然后通过wxs进行组合,如下: [代码]//获取点数据[代码][代码] [代码][代码]wx.request({[代码][代码] [代码][代码]url: getApp().data.net_config.service.host,[代码][代码] [代码][代码]header: getApp().data.net_config.service.header,[代码][代码] [代码][代码]method: [代码][代码]'POST'[代码][代码],[代码][代码] [代码][代码]data: {[代码][代码] [代码][代码]'pg'[代码][代码]: [代码][代码]'rcjg'[代码][代码],[代码][代码] [代码][代码]'type'[代码][代码]: [代码][代码]'ini_data'[代码][代码] [代码][代码]},[代码][代码] [代码][代码]success: [代码][代码]function[代码] [代码](res) {[代码] [代码] [代码][代码]if[代码] [代码](getApp().data.util.json_state(res.data.state)) {[代码][代码] [代码][代码]let d = res.data.data[代码][代码] [代码][代码]let d_len =[代码][代码]0[代码][代码] [代码][代码]for[代码] [代码](let ever [代码][代码]in[代码] [代码]d) {[代码][代码]//计算长度[代码][代码] [代码][代码]d_len++;[代码][代码] [代码][代码]}[代码][代码] [代码][代码]let max_make_len = Math.ceil(d[d_len - [代码][代码]1[代码][代码]][[代码][代码]'Id'[代码][代码]] / [代码][代码]1000[代码][代码])[代码][代码] [代码][代码]// console.log(max_make_len)[代码][代码] [代码][代码]for[代码] [代码](let i = [代码][代码]0[代码][代码]; i < max_make_len; i++) {[代码][代码]//分组,防止数组过大[代码][代码] [代码][代码]that.data.make_map.push([])[代码][代码] [代码][代码]}[代码][代码] [代码] [代码] [代码][代码]// console.log(that.data.make_map)[代码][代码] [代码][代码]let index = [代码][代码]0[代码][代码] [代码][代码]for[代码] [代码](let Key [代码][代码]in[代码] [代码]d) {[代码][代码] [代码][代码]let g = map.bd09_To_Gcj02(d[Key].lng, d[Key].lat)[代码][代码] [代码][代码]let content = [代码][代码]"档案号:\n\r"[代码] [代码]+ d[Key].dah + [代码][代码]"\n\r店名:\n\r"[代码] [代码]+ d[Key].name[代码][代码] [代码][代码]let make_index = Math.ceil(Key / [代码][代码]1000[代码][代码])-[代码][代码]1[代码][代码] [代码][代码]let iconPath = map.get_mkr_ico(d[Key].lx);[代码][代码] [代码][代码]// console.log(make_index)[代码][代码] [代码][代码]let new_make = {[代码][代码] [代码][代码]id: d[Key].Id,[代码][代码] [代码][代码]mark_index: index,[代码][代码] [代码][代码]dah: d[Key].dah,[代码][代码] [代码][代码]name: d[Key].name,[代码][代码] [代码][代码]lx: d[Key].lx,[代码][代码] [代码][代码]callout: {[代码][代码] [代码][代码]content: content,[代码][代码] [代码][代码]display: [代码][代码]'BYCLICK'[代码][代码],[代码][代码] [代码][代码]textAlign: [代码][代码]'left'[代码][代码],[代码][代码] [代码][代码]borderRadius: [代码][代码]50[代码][代码] [代码][代码]},[代码][代码] [代码][代码]latitude: g[[代码][代码]1[代码][代码]],[代码][代码] [代码][代码]longitude: g[[代码][代码]0[代码][代码]],[代码][代码] [代码][代码]iconPath: iconPath,[代码][代码] [代码][代码]width: [代码][代码]20[代码][代码],[代码][代码] [代码][代码]height: [代码][代码]20[代码][代码] [代码][代码]}[代码][代码] [代码][代码]that.data.make_map[make_index].push(new_make)[代码] [代码] [代码][代码]index++[代码][代码] [代码][代码]}[代码][代码] [代码] [代码] [代码][代码]for[代码] [代码](let i = [代码][代码]0[代码][代码]; i < max_make_len;i++) {[代码][代码] [代码][代码]let pr = [代码][代码]"make_map["[代码] [代码]+ i + [代码][代码]"]"[代码][代码] [代码][代码]console.log(pr)[代码][代码] [代码][代码]that.setData({ [pr]: that.data.make_map[i] })[代码][代码] [代码][代码]}[代码][代码] [代码][代码]}[代码][代码] [代码][代码]}[代码][代码] [代码][代码]})[代码][代码]<[代码][代码]wxs[代码] [代码]module[代码][代码]=[代码][代码]"map_make"[代码][代码]>[代码][代码]var make = function (d) {[代码][代码] [代码][代码]var make = [][代码][代码] [代码][代码]d.forEach(function (item, index) {[代码][代码] [代码][代码]make = make.concat(item)[代码][代码] [代码][代码]})[代码][代码] [代码][代码]return make[代码][代码]}[代码][代码]module.exports = {[代码][代码] [代码][代码]makes: make[代码][代码]};[代码][代码]</[代码][代码]wxs[代码][代码]>[代码][代码] [代码][代码]<[代码][代码]map[代码] [代码]wx:if[代码][代码]=[代码][代码]"{{true}}"[代码] [代码]class[代码][代码]=[代码][代码]'map'[代码] [代码]id[代码][代码]=[代码][代码]'map'[代码] [代码]bindmarkertap[代码][代码]=[代码][代码]'bind_mkr_tap'[代码] [代码]bindcallouttap[代码][代码]=[代码][代码]'bind_mkr_callout_tap'[代码] [代码]bindtap[代码][代码]=[代码][代码]'bind_map_tap'[代码] [代码]longitude[代码][代码]=[代码][代码]"{{longitude}}"[代码] [代码]latitude[代码][代码]=[代码][代码]"{{latitude}}"[代码] [代码]markers[代码][代码]=[代码][代码]"{{map_make.makes(make_map)}}"[代码] [代码]style[代码][代码]=[代码][代码]"height:{{map_height}}px;"[代码] [代码]show-location>[代码]</map> [代码][代码][代码] [代码]然而markers加载不出来,经for测试,数据没有问题。 [代码]<[代码][代码]block[代码] [代码]wx:if[代码][代码]=[代码][代码]"{{true}}"[代码] [代码]wx:for[代码][代码]=[代码][代码]"{{map_make.makes(make_map)}}"[代码][代码]>[代码][代码] [代码][代码]<[代码][代码]view[代码][代码]> {{index}}: </[代码][代码]view[代码][代码]>[代码][代码] [代码][代码]<[代码][代码]view[代码][代码]> {{item.dah}} </[代码][代码]view[代码][代码]>[代码][代码]</[代码][代码]block[代码][代码]>[代码]- 希望提供的能力 1、多个markers数组可以直接组合。 2、setData能接收更多数据。 3、setData设置一个开关函数,全部赋值后,统一更新。 本人水平有限,如有解决办法,欢迎各位大大指正。
2018-07-23你好,问题已复现,我们会在后续版本中进行修复。
cover-view全屏background-colorcover-view全屏之后 background-color 在IOS上显示的还是原来的尺寸,安卓是正常的[图片]
2018-07-22live-player全屏时,外部的cover-view仍然可以覆盖阿,你是怎么写的
live-player全屏,cover-view覆盖不上去使用live-player组件播放视频全屏的时候,其他的cover-view覆盖不了,只有写在live-player内部的cover-view元素可以覆盖,所以,全屏的时候实际上只有播放器以及播放器内部的元素了吗?只能这么实现吗?
2018-07-22