微信小程序Echarts覆盖正常组件问题解决


Posted in Javascript onJuly 13, 2019

最近公司的项目中需要在小程序内使用echarts组件来展示数据,同时因为使用了自定义导航栏以及蒙版层,导致Echarts图形覆盖于所有组件的上方,不符合设计要求。       

尝试解决的思路:       

z-index:Echarts使用的是微信原生canvas,优先级高,z-index完全无效。       

cover-view:因为page中含有一些如input之类的无法与cover-view进行嵌套使用的元素,故cover-view也无法奏效。

微信小程序Echarts覆盖正常组件问题解决

wx.canvasToTempFilePath:wx.canvasToTempFilePath官方文档       

思路是等待画图完成之后利用这个方法将画布导出成图片,来代替canvas进行数据展示,使用display来控制canvas的隐藏会出现一些不太好看的闪烁,因此使用position:absolute将canvas预先移动至屏幕外。       

该方法需要在draw()回调方法中使用,部分代码如下:

ec-canvas.js

微信小程序Echarts覆盖正常组件问题解决

wxml中

微信小程序Echarts覆盖正常组件问题解决

js中

微信小程序Echarts覆盖正常组件问题解决

这个过程中还是存在着一些问题,例如如果画图较慢会导致生成的图片只有一部分数据甚至是全透明的,目前只找到了一个并不完善的解决方案,就是使用setTimeOut来增加一些延迟,等待画图结束,因此,加上了wx.showLoading来过渡,但依然存在一些隐患。希望官方可以后续的更新中可以推出一些较为完善的方案。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js中几种去掉字串左右空格的方法
Dec 25 Javascript
JS对象转换为Jquery对象示例
Jan 26 Javascript
jQuery中removeClass()方法用法实例
Jan 05 Javascript
Javascript实现Web颜色值转换
Feb 05 Javascript
JavaScript Split()方法
Dec 18 Javascript
JS创建事件的三种方法(实例代码)
May 12 Javascript
jQuery复合事件用法示例
Jun 10 jQuery
vue监听input标签的value值方法
Aug 27 Javascript
Vue 实现展开折叠效果的示例代码
Aug 27 Javascript
vue简单练习 桌面时钟的实现代码实例
Sep 19 Javascript
Vue通过配置WebSocket并实现群聊功能
Dec 31 Javascript
基于Vant UI框架实现时间段选择器
Dec 24 Javascript
微信小程序图片左右摆动效果详解
Jul 13 #Javascript
vue iview多张图片大图预览、缩放翻转
Jul 13 #Javascript
vue实现图片预览组件封装与使用
Jul 13 #Javascript
微信小程序基于Taro的分享图片功能实践详解
Jul 12 #Javascript
小程序实现悬浮搜索框
Jul 12 #Javascript
小程序实现搜索框功能
Mar 26 #Javascript
iview的table组件自带的过滤器实现
Jul 12 #Javascript
You might like
用PHP和MySQL保存和输出图片
2006/10/09 PHP
php下连接mssql2005的代码
2011/01/17 PHP
基于PHP文件操作的详细诠释
2013/06/21 PHP
PHP中大于2038年时间戳的问题处理方案
2015/03/03 PHP
详解WordPress中调用评论模板和循环输出评论的PHP函数
2016/01/05 PHP
Json_decode 解析json字符串为NULL的解决方法(必看)
2017/02/17 PHP
PDO::commit讲解
2019/01/27 PHP
使用prototype.js进行异步操作
2007/02/07 Javascript
range 标准化之获取
2011/08/28 Javascript
jQuery插件的写法分享
2013/06/12 Javascript
Extjs实现进度条的两种便捷方式
2013/09/26 Javascript
每天一篇javascript学习小结(RegExp对象)
2015/11/17 Javascript
JavaScript中iframe实现局部刷新的几种方法汇总
2016/01/06 Javascript
Node.js的基本知识简单汇总
2016/09/19 Javascript
vue通过数据过滤实现表格合并
2020/11/30 Javascript
vue 导出文件,携带请求头token操作
2020/09/10 Javascript
Echarts.js无法引入问题解决方案
2020/10/30 Javascript
JavaScript中常用的3种弹出提示框(alert、confirm、prompt)
2020/11/10 Javascript
[01:04]DOTA2:伟大的Roshan雕塑震撼来临
2015/01/30 DOTA
Python的Django框架使用入门指引
2015/04/15 Python
在Python中使用zlib模块进行数据压缩的教程
2015/06/26 Python
在IPython中执行Python程序文件的示例
2018/11/01 Python
在pandas多重索引multiIndex中选定指定索引的行方法
2018/11/16 Python
基于Python实现用户管理系统
2019/02/26 Python
python实现简单加密解密机制
2019/03/19 Python
详解python中*号的用法
2019/10/21 Python
Css3实现无缝滚动防抖
2020/09/14 HTML / CSS
英国Amara家居法国网站:家居装饰,现代装饰和豪华礼品
2016/12/15 全球购物
Kathmandu澳洲户外商店:新西兰户外运动品牌
2017/11/12 全球购物
馥绿德雅美国官方网站:Rene Furterer头皮护理专家
2019/05/01 全球购物
自荐书模板
2013/12/15 职场文书
水利学院求职自荐书
2014/02/01 职场文书
校车司机安全责任书
2015/05/11 职场文书
2015年后备干部工作总结
2015/05/15 职场文书
2016年“5.12”护士节致辞
2015/07/31 职场文书
如何写一份成功的商业计划书
2019/06/25 职场文书