当前位置: 首页 > news >正文

uniapp app端 echarts 设置tooltip的formatter不生效问题以及解决办法

需求一: y轴数据处理不同数据增加不同单位
需求二: 自定义图表悬浮显示的内容

需求一:实现方式 在yAxis里面添加formatter
在这里插入图片描述

 yAxis: [{//y轴显示value的设置axisLabel: {show: true,formatter (value, index) => {var valueif (value >= 1000 && value < 10000) {value = value / 1000 + 'k'} else if (value >= 10000) {value = value / 10000 + 'w'} else if (value < 1000) {value = value},},return valuecolor: 'rgba(0,0,0,0.3)',fontSize: '12'},}]

问题: formatter 设置未生效 h5可以正常展示能看到单位,但是app端不生效
app端不生效是因为:

在app端,回调函数无法从renderjs外传递,上面的设置使用了回调函数,所以app端不生效。

但是需求功能要使用回调函数才能实现。

查看Echarts组件的代码,发现里面有这样一段代码:
在这里插入图片描述
所以,只需要在函数update(option) {}里面自定义设置相关回调函数即可。

下面是我最终的实现代码
在这里插入图片描述
然后跟update同级添加以下方法(此方法为上方update里面调用)
在这里插入图片描述
在回到调用echarts页面 重新更改下方法

 yAxis: [{//y轴显示value的设置axisLabel: {show: true,formatterFunction: `(value, index) => {var valueif (value >= 1000 && value < 10000) {value = value / 1000 + 'k'} else if (value >= 10000) {value = value / 10000 + 'w'} else if (value < 1000) {value = value}return value}`,return valuecolor: 'rgba(0,0,0,0.3)',fontSize: '12'},}]

这时app端已经可以成功显示了
那需求二就是在此基础上实现可以渲染html代码就可以了

需求二:实现方式 在yAxis里面添加formatter
在这里插入图片描述

对tooltip进行formatter相关的设置

 tooltip: {trigger: 'axis', // axis显示该列下所有坐标轴对应数据,item只显示该点数据formatterFunction: `(params)=>{console.log(params)	//可以先输出看下都有什么内容  // str里面的代码只是部分代码 只演示怎么在这里面写html实现想要的内容样式let str = '<span>'+ params[1].name +'</span></br><span>' +'合计:'+ '</span> <span> '+params[1].value+'</span>'return str; }`,axisPointer: {type: 'shadow' // 默认为直线,可选为:'line' | 'shadow'}
},
http://www.lryc.cn/news/104860.html

相关文章:

  • Spring入门-技术简介、IOC技术、Bean、DI
  • 深度学习之反向传播
  • 网络安全 Day23-mariadb数据库数据管理和备份
  • Centos7 上安装 redis-dump 和redis-load 命令
  • 【NLP PyTorch】字符级RNN循环网络模型姓氏对应国家分类(项目详解)
  • C++设计模式之责任链设计模式
  • 《Java-SE-第二十三章》之单例模式
  • 如何快速同步第三方平台数据?
  • 反射(一)
  • 29.利用fminbnd 求解 最大容积问题(matlab程序)
  • express学习笔记7 - docker跟mysql篇
  • Leetcode(一):数组、链表部分经典题目详解(JavaScript版)
  • 内网穿透的底层原理是什么
  • Bash配置文件
  • 写Acknowledgement的时候,latex日志出现警告
  • GCC生成map文件
  • IOS看书最终选择|源阅读转换|开源阅读|IOS自签
  • easyui实用点
  • 算法训练营第五十六天||● 583. 两个字符串的删除操作 ● 72. 编辑距离 ● 编辑距离总结篇
  • C语言每日一题:10.不使用+-*/实现加法+找到所有数组中消失的数。
  • LibreSSL SSL_connect: SSL_ERROR_SYSCALL in connection to github.com:443
  • JS数组的详解与使用
  • c++ / python / java / PHP / SQL / Ruby / Objective-C / JavaScript 发展史
  • Linux第一个小程序-进度条(缓冲区概念)
  • CentOS7环境安装tomcat
  • C# 中使用ValueTask优化异步方法
  • KVM创建新的虚拟机(图形化)
  • 正则表达式在格式校验中的应用以及包装类的重要性
  • Docker使用之java项目工程的部署
  • 3ds Max如何进行合成的反射光泽通道渲染