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

echarts主题切换实现

文章目录

  • 一、实现方式
    • 1.实现思路
    • 2.指定主题
    • 3.设置图表背景透明
  • 二、具体实现
    • 1.监听与销毁
    • 2修改主题色细节


在这里插入图片描述

参考链接

一、实现方式

场景: 首先是我的项目有不同主题色,切换主题时候想要将echarts的图表主题色也一并更改,暂时只设置’light’和’dark’明暗两种主题色

1.实现思路

  • 监听主题色变化或者切换事件
  • 将现有echarts图表注销
  • 进行重绘(可以直接设置对应主题色等)

2.指定主题

第二个参数为主题色
在这里插入图片描述

3.设置图表背景透明

设置backgroundColor: ‘’,实现透明色
如不设置透明,切换后也是白色背景图
在这里插入图片描述

二、具体实现

1.监听与销毁

import { currentTheme } from '@/utils/theme.js'
watch(() => currentTheme.value, // 监听主题变量变化val => {myEcharts.dispose() // 销毁旧实例nextTick(() => {initChart(val) // 这里可以传递变量 例如该主题色对应的个颜色细节window.addEventListener("resize", handleResize) // 监听尺寸 使用你自己的方法即可})},{ deep: true, immediate: false } // immediate一定要false  初始没有图表的
)// 初始化图表
const initChart = (themeVale = 'light') => {if (!myEcharts?._dom) {myEcharts = echarts.init(chartEl.value, themeVale)}myEcharts.setOption(getChartOption())
}

2修改主题色细节

如果你不满足light和dark,还想要改变具体的图表内容颜色。那就去修改你的图表option配置
方法:通过主题参数,三元判断使用对应主题色细节即可

相关文章:

  • 容器(如 Docker)中,通常不建议运行多个进程或要求进程必须运行在前台
  • 物联网常用协议Modbus、CAN、BACnet介绍
  • 【C语言】指针详解(接)
  • vue发版html 生成打包到docker镜像进行发版
  • 《深度关系-从建立关系到彼此信任》
  • 【android bluetooth 协议分析 02】【bluetooth hal 层详解 6】【bt_vendor_opcode_t 介绍】
  • Ad Hoc
  • 源的企业级网络安全检测工具Prism X(棱镜X)
  • flutter项目迁移空安全
  • 欧盟MID认证,助力全球新能源高效计量与管理
  • Seata 面试题解析
  • 软考 系统架构设计师之考试感悟3
  • ubuntu 安装上传的 ffmpeg_7.1.1.orig.tar.xz并使用
  • 深入理解 SELinux:通过 Nginx 和 SSH 服务配置实践安全上下文与端口策略
  • 动态规划-931.下降路径最小和-力扣(LeetCode)
  • 高端装备制造企业如何选择适配的项目管理系统提升项目执行效率?附选型案例
  • 制造企业生产数据分析全解析:5大类数据定义、分析方法与落地指南
  • 阿里通义实验室突破空间音频新纪元!OmniAudio让360°全景视频“声”临其境
  • 制造企业搭建AI智能生产线怎么部署?
  • C++:栈帧、命名空间、引用
  • 外卖网站建设/广州企业推广
  • 怎么让百度快速收录网站/西安网约车
  • 公司让我做网站/长沙市网站制作
  • 深圳东莞网站开发/成都门户网站建设
  • 建筑室内设计软件/盐城seo营销
  • 哪个网站可以做服装批发衣服/国内做网站比较好的公司