Vue2版本封装公共echarts的监听方法

#注意 :

因为一个页面有多个图表,所以封装一个公共的js文件,方便后续使用。

适用于Vue2版本,粘贴即用即可。

1、echartsMixin.js文件如下


// echartsMixin.js
import echarts from 'echarts'export default {data() {return {myCharts: []}},mounted() {window.addEventListener('resize', this.handleResize)//监听图表随屏幕的变化而变化},methods: {initChart(ref) {//初始化dom事件const chart = echarts.init(ref)this.myCharts.push(chart)return chart},handleResize() {//循环多个图标domthis.myCharts.forEach(chart => {chart.resize()})}},beforeDestroy() {//页面摧毁前摧毁图表this.myCharts.forEach(chart => {chart.dispose()})}
}

2、其次在使用到的页面去引入此文件(这里不建议全局注册到main.js上)

3、使用方法如下,定义一个方法,供图像dom元素加载完毕调用

  getFirstPageData(objQuery).then(res => {if (res.success) {// 第一个扇形图const firstBingChartObj = {mark: 'evaluation1',color: that.color,dataList: res.data.firstBingChartObj.dataList,total: res.data.firstBingChartObj.total}// 加数据时显示判断this.firstNoDataMark = res.data.firstBingChartObj.dataList.length > 0this.$nextTick(() => {if (this.firstNoDataMark) {that.getFirstBingChart(firstBingChartObj)}})// 第二个扇形图const secondBingChartObj = {mark: 'evaluation2',color: that.color,dataList: res.data.secondBingChartObj.dataList,total: res.data.secondBingChartObj.total}this.secondNoDataMark = res.data.secondBingChartObj.dataList.length > 0 //这里为了判断是否有图像数据,没数据显示没数据公共组件,,下面会提到哈this.$nextTick(() => {if (this.secondNoDataMark) {that.getSecondBingChart(secondBingChartObj)}})this.watchEcharts()// dom元素初始化后 调用监听echarts图表变化}})

4、图表无数据时候显示无数据组件。(注意:这里要用v-if进行判断需要使用nexTick,使用v-show会导致图表变形哈)

//html  <div v-if="firstNoDataMark" id="evaluation1" ref="evaluation1" style="width: 100%; height: 320px" /><no-data v-else text="当前年度暂无数据" :custom-style-obj="{height:'320px'}" />

5、no-data组件

<template><div class="no-data-show" :style="{height:customStyleObj.height}"><div class="nodata-card"><div class="no-data-icon"><img :src="iconUrl" width="120" height="120"></div><div class="no-data-title">{{ text }}</div></div></div>
</template><script>
export default {name: 'NoData',props: {value: {type: Number,default: null},// 自定义样式customStyleObj: {type: Object,default: function() {return {minHeight: '184px',height: '200px'}}},// text显示数据text: {type: String,default: '本月度暂无数据'},// 传递图标iconUrl: {type: String,default: 'http://10.81.16.14:9900/publishattachment/2024/03/14/e190cace7eb74e728172073c0499926f.png'}},data: function() {return {}},watch: {value: {handler: function(newVal, oldVa) {},immediate: true,deep: true}},created() {},methods: {}
}
</script><style scoped lang="scss">
/*无数据展示*/
@import "@/views/scsscomponents/no-data-show.scss";
</style>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/780196.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

标题:基于uQRCode的Vue前端二维码生成组件技术探究

摘要&#xff1a;随着移动互联网的普及&#xff0c;二维码作为信息传递的媒介在各类应用中得到了广泛使用。前端开发中&#xff0c;二维码生成功能已成为一个常见的需求。本文将深入探讨如何使用uQRCode库在Vue前端框架中封装一个二维码生成组件&#xff0c;该组件可适用于所有…

神经网络后面的层被freeze住,会影响前面的层的梯度吗?

神经网络后面的层被freeze住&#xff0c;会影响前面的层的梯度吗&#xff1f; 答案是不会。 假设一个最简单的神经网络&#xff0c;它只有一个输入 x x x&#xff0c;一个隐藏层神经元 h h h&#xff0c;和一个输出层神经元 y y y&#xff0c;均方差损失 L L L&#xff0c;真实…

小迪学习笔记(内网安全)(常见概念和信息收集)

小迪学习笔记&#xff08;内网安全&#xff09;&#xff08;一&#xff09; 内网分布图内网基本概念工作组和域环境的优缺点内网常用命令域的分类单域父域和子域域数和域森林 Linux域渗透问题内网安全流程小迪演示环境信息收集mimikatzLazagne(all)凭据信息政集操作演示探针主机…

Linux newgrp命令教程:如何更改当前登录会话的组ID(附实例详解和注意事项)

Linux newgrp命令介绍 newgrp命令在Unix-like操作系统中用于配置用户登录的组成员身份。它允许用户在登录会话期间更改他们的默认组。如果参数中包含连字符&#xff08;“-”&#xff09;&#xff0c;用户的环境将被初始化&#xff0c;就像他们刚刚登录一样&#xff1b;否则&a…

夏季水域安全管理,AI智能识别算法防溺水视频监控方案

随着夏季的到来&#xff0c;不少人为了一时的痛快凉爽就私自下水游泳&#xff0c;特别是在野外池塘&#xff0c;由于长期无人监管&#xff0c;极易发生人员溺亡事件&#xff0c;如何对池塘水域进行全天候无人值守智能监管&#xff0c;并实现发生人员闯入就立即告警&#xff1f;…

C# 学习第五弹——语句

一、if语句 —简单if语句 —if else 语句 —if else if else 语句 1、简单if语句 if&#xff08;表达式&#xff09;{语句} &#xff08;1&#xff09;表达式必须使用圆括号括起来&#xff1b; &#xff08;2&#xff09;表达式&#xff1a;关系表达式或逻辑表达…

数据结构:单调栈和单调队列

文章目录 一、单调栈1.1、栈的思想1.2、单调栈1.2.1、单调栈的基本应用&#xff1a;找出数组中每个元素右侧第一个更大的元素1.2.2、单调栈的基本应用&#xff1a;找出数组中每个元素左侧第一个更大的元素1.2.3、单调栈拓展1.2.4、单调栈LeetCode题单 二、单调队列2.1、队列的思…

java数据结构与算法刷题-----LeetCode34. 在排序数组中查找元素的第一个和最后一个位置

java数据结构与算法刷题目录&#xff08;剑指Offer、LeetCode、ACM&#xff09;-----主目录-----持续更新(进不去说明我没写完)&#xff1a;https://blog.csdn.net/grd_java/article/details/123063846 文章目录 二分查找 二分查找 解题思路&#xff1a;时间复杂度O( l o g 2 …

算法沉淀——拓扑排序

前言&#xff1a; 首先我们需要知道什么是拓扑排序&#xff1f; 在正式讲解拓扑排序这个算法之前&#xff0c;我们需要了解一些前置知识&#xff08;和离散数学相关&#xff09; 1、有向无环图&#xff1a; 指的是一个无回路的有向图。 入度&#xff1a;有向图中某点作为图…

下班搞副业成热潮:有人月入过万

近日&#xff0c;“下班后的年轻人开始搞第二事业了”成为了社交媒体上热议的话题。从繁华的都市街头到静谧的社区小巷&#xff0c;下班后的年轻人正用双手书写着属于自己的故事。 他们中有的人选择成为夜市中的一道亮丽风景线&#xff0c;摆摊售卖那些独特而富有创意的小物件&…

HarmonyOS 应用开发之启动/停止本地PageAbility

启动本地PageAbility PageAbility相关的能力通过featureAbility提供&#xff0c;启动本地Ability通过featureAbility中的startAbility接口实现。 表1 featureAbility接口说明 接口名接口描述startAbility(parameter: StartAbilityParameter)启动Ability。startAbilityForRes…

人工智能|推荐系统——搜索引擎广告

原文题目 Dark sides of artificial intelligence: The dangers of automated decision-making in search engine advertising(JASIST,2023) 人工智能的阴暗面:搜索引擎广告自动决策的危险 摘要 随着人工智能应用的日益广泛,搜索引擎供应商越来越多地要求广告商使用基于机…

k8s局域网通过operator部署rabbitmq

参考&#xff1a;Installing RabbitMQ Cluster Operator in a Kubernetes Cluster | RabbitMQ 1、下载cluster-operator.yml wget https://github.com/rabbitmq/cluster-operator/releases/download/v2.7.0/cluster-operator.yml 2、拉取对应的镜像&#xff0c;这里的版本是根…

MFC:组合框ComboBox的使用

在MFC中有一个CComboBox类&#xff0c;内部封装了组合框的各种操作。ComboBox控件是由一个文本输入控件和一个下拉菜单组成的&#xff0c;使用时可以从预先定义的列表里选择一个选项&#xff0c;使用起来很方便。下面将以实例方式介绍组合框的使用方法。 在VS2022中首先…

什么是搜索引擎(SEO)爬虫它们是如何工作的?

什么是搜索引擎&#xff08;SEO&#xff09;爬虫&它们是如何工作的&#xff1f; 你的网站上有蜘蛛&#x1f577;️。别抓狂&#xff01;我说的不是真正的八条腿的蜘蛛&#x1f577;️。 我指的是搜索引擎优化爬虫。他们是实现SEO的机器人。每个主要的搜索引擎都使用爬虫来…

3.java openCV4.x 入门-Mat之构造函数与数据类型

专栏简介 &#x1f492;个人主页 &#x1f4f0;专栏目录 点击上方查看更多内容 &#x1f4d6;心灵鸡汤&#x1f4d6;我们唯一拥有的就是今天&#xff0c;唯一能把握的也是今天 &#x1f9ed;文章导航&#x1f9ed; ⬆️ 2.hello openCV ⬇️ 4.待更新 Mat之构造函数与数…

linux正则表达式之*

1.*含义 linux正则表达式*表示重复0个或多个前一个重复字符 2.样例 正则表达式*样例 命令&#xff1a; grep -n "min*" anaconda-ks.cfg #找出含有mi、min、minn等字符串的行。注&#xff1a;因为*可以是0个&#xff0c;所以mi也是符合搜索字符串&#xff0c;另…

linux centos7.9 weblogic14c java1.8.401 安装部署流程

一、获取安装包&#xff1a; Java1.8.401&#xff1a;Java Downloads | Oracle weblogic 14c&#xff1a;https://download.oracle.com/otn/nt/middleware/14c/14110/fmw_14.1.1.0.0_wls_lite_Disk1_1of1.zip 选generic版本 二、将安装包传到Linux服务器上 方法不限&#xf…

物理寻址和功能寻址,服务器不同的应答策略和NRC回复策略

1&#xff1a;功能寻址&#xff0c;服务器应答与NRC回复策略 详细策略上&#xff0c;又分为服务有子功能&#xff0c;和不存在子功能。 1.1功能寻址&#xff0c;存在子功能 存在子功能的情况下&#xff0c;又分为supress postive response &#xff08;即子功能字节的bit7&a…

Servlet基础 管理员注册页面

管理员注册页面 index.jsp <% page language"java" import"java.util.*" pageEncoding"UTF-8"%> <% String path request.getContextPath(); String basePath request.getScheme()"://"request.getServerName()":&quo…