解决微信小程序在iOS 系统上echarts不能滑动的问题
AI 概述
解决方案1.添加遮罩层2. 将图表转为图片展示3. 使用echart插件的disableTouch属性。
在微信小程序中使用echarts插件的时候,遇到了一个问题:当系统是iOS时,如果手指先是长按图表,然后页面会无法滑动,其中南丁格尔玫瑰图尤其明显。作为一个微信小程序的新手开发,这个问题属实难倒我了。
解决方案
1...
目录
在微信小程序中使用echarts插件的时候,遇到了一个问题:当系统是iOS时,如果手指先是长按图表,然后页面会无法滑动,其中南丁格尔玫瑰图尤其明显。作为一个微信小程序的新手开发,这个问题属实难倒我了。
解决方案
1.添加遮罩层
使用一个遮罩层覆盖echarts图表,这样的话,当长按并滑动页面的时候,滑动的就是这个遮罩层了,自然就可以解决问题。
遇到的问题:
canvas是原生组件,层级很高,view无法作为遮罩层。我使用的是cover-view作为遮罩层。<cover-view wx:if="{{isIOS}}" class="echart-mask" ></cover-view> <e-chart chart-class='echart' option='{{ data.getEChartOption(employeeInfoList) }}' bindinstance='getEchartInstance' />- 再添加了遮罩层之后,在
iOS系统上可以正常滑动,但是在Android系统上又无法滑动了(真是风水轮流转 ̄へ ̄)。我是在页面上对系统进行判断,以决定是否创建遮罩层。wx.getSystemInfo({ success: (result) =>this.setData({ isIOS: result.system.match(/iOS/) }), });
2. 将图表转为图片展示
因为echarts图标在我这只是进行数据展示,而不会与用户进行交互,所以也考虑到了在 echarts 的过渡动画走完之后,用图片来代替echarts组件。
getEchartInstance({
detail: echart
}) {
echart.on('finished', () = >{
echart.getDom().saveAsImage().then((path) = >{
this.setData({
homeworkCountEchartImg: path
});
});
});
},
遇到的问题:
在图片替换echarts的时候,出现了一次闪烁。要注意在图片加载完毕之后再移除echarts,可以使用image的bindload来控制。
3. 使用echart插件的disableTouch属性。
在option对象的根目录,添加disableTouch属性,设为 true 即可。这是微信echarts插件官方技术人员给出的一种解决方案。
var eChartOption = {
disableTouch: true, //解决 ios 系统,echarts 长按不能滑动的问题
color: [
'#79db66',
'#769efd',
'#f6994f',
'#f5df4e',
'#a668f5',
'#66cbdb',
'#dc76fd',
'#6062e0',
'#ec7997',
'#88e6be',
],
legend: {
selectedMode: false,
show: false,
},
}
以上就是解决微信小程序在 iOS 系统上 echarts 不能滑动的问题方法,希望对需要的小伙伴有帮助。
以上关于解决微信小程序在iOS 系统上echarts不能滑动的问题的文章就介绍到这了,更多相关内容请搜索码云笔记以前的文章或继续浏览下面的相关文章,希望大家以后多多支持码云笔记。
声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权/违法违规/事实不符,请将相关资料发送至 admin@mybj123.com 进行投诉反馈,一经查实,立即处理!
重要:如软件存在付费、会员、充值等,均属软件开发者或所属公司行为,与本站无关,网友需自行判断
码云笔记 » 解决微信小程序在iOS 系统上echarts不能滑动的问题
如若内容造成侵权/违法违规/事实不符,请将相关资料发送至 admin@mybj123.com 进行投诉反馈,一经查实,立即处理!
重要:如软件存在付费、会员、充值等,均属软件开发者或所属公司行为,与本站无关,网友需自行判断
码云笔记 » 解决微信小程序在iOS 系统上echarts不能滑动的问题

微信
支付宝