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

vue3封装echarts图表数据无法渲染到页面

问题是后端的数据已经成功返回到前端了,但是Echarts图表一直不能被渲染,卡了一个多小时,最后问gpt才解决(gptyyds!!!)

 methods: {loadGet() {this.$axios.get(this.$httpUrl + '/goods/count').then(res => res.data).then(res => {console.log(res)// this.cntdata = res.dataif (res.code == 200) {// this.yData = res.data// this.cntData.length=0;for (let i = 0; i < res.data.length; i++) {this.cntData.push(res.data[i]);}console.log("data = =" + this.cntData + res.data.length)this.$message({message: '操作成功!',type: 'success'});} else {this.$message({message: '操作失败!',type: 'error'});}})},init() { //调用session中的用户数据this.user = JSON.parse(sessionStorage.getItem('CurUser'))},initEcharts() {let option = {title: {text: "现存物资量"},tooltip: {},legend: {data: [""]},xAxis: {data: ["鼠标", "帐篷", "键盘", "口罩", "矿泉水", "棉被"]},yAxis: {},series: [{name: "发放量",type: "bar", //类型为柱状图// data: [5, 20, 36, 10, 10, 20]data: this.cntData  //问题出在这 data一直不能被后端返回的this.cntData渲染!}]};const myChart = echarts.init(this.$refs.mychart);// 图标初始化myChart.setOption(option);// 渲染页面//随着屏幕大小调节图表window.addEventListener("resize", () => {myChart.resize();});},},created() {this.init()}
}
</script>

原文:

我:这份代码中ECharts图标中的 series 中的data无法被后端传来的数据渲染怎么办
gpt:
在你提供的代码中,ECharts 图表的数据被初始化为 this.cntData,但 this.cntData 在组件创建时是一个空数组。要使图表能够根据后端传来的数据进行渲染,你需要确保在数据加载完成后再初始化图表。
为了实现这一点,你可以在 loadGet 方法成功获取数据后调用 initEcharts 方法来初始化图表。这确保了数据已经准备好并且可以在图表中使用。下面是修改后的代码片段:

methods: {loadGet() {this.$axios.get(this.$httpUrl + '/goods/count').then(res => res.data).then(res => {console.log(res);if (res.code === 200) {this.cntData = res.data; // 将数据赋值给 cntDatathis.initEcharts(); // 初始化图表 !!!!!!这里!this.$message({message: '操作成功!',type: 'success'});} else {this.$message({message: '操作失败!',type: 'error'});}});},initEcharts() {let option = {// ... 其余图表配置 ...series: [{name: "发放量",type: "bar", //类型为柱状图data: this.cntData // 使用从后端获取的数据}]};const myChart = echarts.init(this.$refs.mychart);myChart.setOption(option);window.addEventListener("resize", () => {myChart.resize();});},// ... 其他方法 ...
},

我:其中的mounted方法是先于beforeMount运行的吗
gpt:不对,beforeMount 方法在 mounted 方法之前执行。Vue.js 生命周期中的顺序是如下的:

beforeCreate: 在实例初始化之后,数据观测 (data observation) 和事件配置 (event/watcher
setup) 之前被调用。这时实例还没有初始化完成,数据和事件方法尚不可用。

created: 在实例创建完成后被立即调用。在这一步,实例已完成以下的配置:数据观测(data
observation),属性和方法的运算,watch/event事件回调。然而,挂载阶段还没开始,DOM 元素也还没有被创建。

beforeMount: 在挂载开始之前被调用:相关的 render 函数首次被调用。

mounted: el 被新创建的 vm.$el 替换,并挂载到实例上去之后调用该钩子。

所以,beforeMount 在 mounted 之前执行,它们分别位于 Vue 实例生命周期的不同阶段。
–没看懂。。。。


我:那为什么this.cntData不能去填充图标的data

gpt: 问题可能是由于异步操作的原因。在你的代码中,loadGet 方法通过异步请求从后端获取数据,并在获取数据后调用initEcharts 方法。然而,由于异步请求的性质,initEcharts 方法可能在数据还没有获取到时就被调用了,导致 this.cntData 仍然是空数组。

要解决这个问题,你可以确保在数据成功获取后再调用 initEcharts 方法。你已经在 loadGet
方法中进行了这个调用,但是需要注意确保数据获取成功后才执行这个调用。


看懂了好像…

相关文章:

vue3封装echarts图表数据无法渲染到页面

问题是后端的数据已经成功返回到前端了&#xff0c;但是Echarts图表一直不能被渲染&#xff0c;卡了一个多小时&#xff0c;最后问gpt才解决&#xff08;gptyyds&#xff01;&#xff01;&#xff01;&#xff09; methods: {loadGet() {this.$axios.get(this.$httpUrl /goods…...

MySQL索引,事务和存储引擎

一、索引 1、索引的概念 ●索引是一个排序的列表&#xff0c;在这个列表中存储着索引的值和包含这个值的数据所在行的物理地址&#xff08;类似于C语言的链表通过指针指向数据记录的内存地址&#xff09;。 ●使用索引后可以不用扫描全表来定位某行的数据&#xff0c;而是先…...

开发指导—利用CSS动画实现HarmonyOS动效(一)

注&#xff1a;本文内容分享转载自 HarmonyOS Developer 官网文档 一. CSS 语法参考 CSS 是描述 HML 页面结构的样式语言。所有组件均存在系统默认样式&#xff0c;也可在页面 CSS 样式文件中对组件、页面自定义不同的样式。请参考通用样式了解兼容 JS 的类 Web 开发范式支持的…...

电商项目part10 高并发缓存实战

缓存的数据一致性 只要使用到缓存&#xff0c;无论是本地内存做缓存还是使用 redis 做缓存&#xff0c;那么就会存在数据同步的问题。 先读缓存数据&#xff0c;缓存数据有&#xff0c;则立即返回结果&#xff1b;如果没有数据&#xff0c;则从数据库读数据&#xff0c;并且把…...

MongoDB实验——MongoDB shell操作

MongoDB shell操作 实验原理 MongoDB shell是一个可执行文件&#xff0c;是MongoDB自带的一个交互式JavaScript shell&#xff0c;位于MongoDB安装路径下的/bin文件夹中。要启动MongoDB shell&#xff0c;可执行命令mongo。这将在控制台提示符中启动该shell&#xff0c;Mongo…...

数据分析师职业发展道路,工作内容是什么?

很多同学问&#xff0c;参加数据分析就业班后之的就业发展道路是怎样的&#xff0c;工作又能做什么呢&#xff1f; 市面上的常见的工作类型有有运营类、技术类及分析类等&#xff0c;可以根据自己的意愿去做适合自己的工作&#xff0c;但是任何工作其实都是需要一技之长。…...

Vue3 + ts的使用

一. IDE的配置 1. VSCode 插件安装搜索builtin typescript 2. 点击“TypeScript and JavaScript Language Features”右下角的小齿轮&#xff0c;然后选择“Disable (Workspace)” 3. 重新加载工作空间。Takeover 模式将会在你打开一个 Vue 或者 TS 文件时自动启用。 二. 依赖的…...

CF Edu152 C

Problem - C - Codeforces 题意&#xff1a; 思路&#xff1a; 首先&#xff0c;观察样例可知 这种是等效的 推广一下 0000.....111111 ..l..............r...... 这种是等效的 容易想到维护后面第一个1的位置和前面第一个0的位置&#xff0c;然后把所有区间都等效一下&…...

iBooker 技术评论 20230902

一、女子同时供职 16 家公司却从不上班&#xff0c;全国骗薪群体至少有七八百人&#xff0c;为何会出现此类骗薪群体&#xff1f; 社保其实很好绕过。就是这些骗薪者一起创立一个外包公司&#xff0c;然后通过这个公司把自己外包出去。这些人和外包公司签的是劳务合同&#xf…...

视频动态壁纸 Dynamic Wallpaper for Mac中文

Dynamic Wallpaper是一款Mac平台上的动态壁纸应用程序&#xff0c;它可以根据时间等因素动态切换壁纸&#xff0c;提供更加生动和多样化的桌面体验。 Dynamic Wallpaper包含了多个动态壁纸&#xff0c;用户可以根据自己的喜好选择和切换。这些动态壁纸可以根据时间等因素进行自…...

Java“牵手”京东商品列表数据,关键词搜索京东商品数据接口,京东API申请指南

京东商城是一个网上购物平台&#xff0c;售卖各类商品&#xff0c;包括服装、鞋类、家居用品、美妆产品、电子产品等。要获取京东商品列表和商品详情页面数据&#xff0c;您可以通过开放平台的接口或者直接访问京东商城的网页来获取商品详情信息。以下是两种常用方法的介绍&…...

springboot实战(三)之多环境部署配置文件生效方式

环境&#xff1a; jdk&#xff1a;1.8 springboot版本&#xff1a;2.7.15 配置&#xff1a; 1.新建yml文件 在resources包中创建application-dev.yml、application-testing.yml两个yml文件 2.配置 在application.yml进行配置生效文件 3.注意事项 新建yml的名称必须以&qu…...

java透传参数至logback,自定义日志文件名。过期日志文件自动删除

LogFilter filter日志拦截&#xff0c;把不需要打印的日志信息拦截在外&#xff0c;只录入有key参数的&#xff08;filterReply FilterReply.ACCEPT;&#xff09;。 package com.***.***.filter;import ch.qos.logback.classic.Level; import ch.qos.logback.classic.spi.IL…...

HFSS 3维曲线导入

HFSS 3维曲线导入 简介环境参考代码使用结果 简介 如图一所示&#xff0c;CST中可以通过导入和到出由任意点组成的曲线&#xff0c;但是HFSS中貌似不能导入&#xff08;如图二所示&#xff09;&#xff0c;如果我们要将matlab的产生的曲线的点的数据导入特变麻烦&#xff0c;特…...

【消息中心】kafka消费失败重试10次的问题

Kafka消费失败重试10次的问题通常可以通过配置Kafka消费者来调整。在Kafka中&#xff0c;可以通过设置max.poll.interval.ms、fetch.min.bytes、fetch.max.bytes、fetch.max.wait.ms等参数来控制消费者的拉取消息的行为。 在Spring-Kafka中&#xff0c;消费失败的重试次数可以…...

无涯教程-Python机器学习 - Semi-supervised Learning函数

Python机器学习 中的 Semi - 无涯教程网无涯教程网提供https://www.learnfk.com/python-machine-learning/machine-learning-with-python-semi-supervised-learning.html...

7 | 计算每个键对应的平均值,并按降序排序

假设您有一个包含销售订单的RDD,其中每个元素是一个键值对,其中键表示产品名称,值表示销售数量。您希望按产品名称对销售订单进行分组,并计算每个产品的总销售数量。最后,希望获得每个产品的总销售数量以及按产品名称分组的详细销售订单列表。 计算每个键对应的总和和计数…...

kafka详解二

kafka详解二 1、 offset 1.1 offset介绍 老版本 Consumer 的位移管理是依托于 Apache ZooKeeper 的&#xff0c;它会自动或手动地将位移数据提交到 ZooKeeper 中保存。当 Consumer 重启后&#xff0c;它能自动从 ZooKeeper 中读取位移数据&#xff0c;从而在上次消费截止的地…...

SAP_ABAP_接口技术_RFC远程函数实践总结

SAP ABAP顾问能力模型梳理_企业数字化建设者的博客-CSDN博客SAP Abap顾问能力模型&#xff0c;ALV/REPORT|SMARTFROM|SCREEN|OLE|BAPI|BDC|PI|IDOC|RFC|API|WEBSERVICE|Enhancement|UserExits|Badi|Debughttps://blog.csdn.net/java_zhong1990/article/details/132469977 SAP接…...

计算机 --> 磁盘 --> 分区

一、分区&#xff1b;步骤较完整&#xff0c;未测试 网址&#xff1a;电脑硬盘怎么分区&#xff1f;C盘/D盘/E盘......快来创建自己的DIY磁盘吧&#xff01;_e盘怎么创建_布 迪的博客-CSDN博客...

论文查重,重复率太高怎么办?

先说一句最重要的&#xff1a;别一看到 45%、60%、70% 就直接崩。高重复率不代表这篇论文废了。先看你高在哪。因为不同位置的重复&#xff0c;处理方式完全不一样。第一步&#xff1a;先分类&#xff0c;不要闭眼硬改一般高重复来源就这几类&#xff1a;文献综述爆红理论定义爆…...

龙芯3A5000开发板PMON升级UEFI固件实战指南

1. 项目概述&#xff1a;从“能用”到“好用”的固件升级之路最近折腾了一块搭载龙芯3A5000处理器的开发板&#xff0c;型号是迅为的LS3A5000。拿到手的时候&#xff0c;板子预装的固件还是传统的PMON。PMON对于玩龙芯的老朋友来说不陌生&#xff0c;它功能稳定&#xff0c;但界…...

别再搞混了!SAP物料主数据、BOM、工艺路线里的三种损耗率(Scrap)到底怎么配?

SAP三大损耗率配置实战指南&#xff1a;从物料主数据到工艺路线的精准决策 在SAP PP模块实施过程中&#xff0c;物料损耗率的配置往往成为顾问团队争论的焦点。我曾参与过一个汽车零部件制造项目&#xff0c;由于初期对三种损耗率的理解偏差&#xff0c;导致MRP运算结果与实际情…...

应对2026AIGC检测算法:5大热门降AI工具实测与免费提示词秘籍

为了找到真正靠谱的解决方案&#xff0c;我过去测试了市面上大部分号称能降低ai率的方法。从一分钱不花的模型指令&#xff0c;到各种付费的专业降ai率工具&#xff0c;用手头的文本做了几十次实操对比。说心里话&#xff0c;里面套路确实不少&#xff0c;有些方法用完后语句颠…...

低代码平台推荐:零基础业务人员专属

在数字化转型加速的当下&#xff0c;低代码已成为打破IT资源瓶颈的关键抓手。本文专为零基础业务人员深度拆解零门槛低代码平台的选型逻辑与落地路径。通过7大核心问答&#xff0c;系统梳理从技能门槛、平台评估到架构融合的实战经验。据行业调研显示&#xff0c;采用成熟低代码…...

告别Blob分析:Halcon差异化模型在复杂印刷品检测中的降本增效实践

工业视觉新范式&#xff1a;Halcon差异化模型在精密印刷检测中的实战突破 印刷品质量检测一直是工业视觉领域的硬骨头——那些微米级的墨点缺失、毫厘间的字符偏移&#xff0c;以及生产线上的光影变幻&#xff0c;都在挑战传统算法的极限。当Blob分析遇上多印漏印、位置飘移、…...

Trillium中文版:破解企业数据治理困局,实现业务驱动数据质量

1. 项目概述&#xff1a;当数据治理遇上“本地化”浪潮最近&#xff0c;业内一个消息引起了我的注意&#xff1a;数据质量与数据集成领域的“老牌劲旅”Syncsort&#xff0c;正式推出了其核心产品Trillium软件系统的中文版。这个消息乍一看&#xff0c;可能只是又一个国际软件厂…...

如何高效使用Avogadro 2:5个实用技巧带你掌握开源分子建模软件

如何高效使用Avogadro 2&#xff1a;5个实用技巧带你掌握开源分子建模软件 【免费下载链接】avogadroapp Avogadro is an advanced molecular editor designed for cross-platform use in computational chemistry, molecular modeling, bioinformatics, materials science, an…...

YOLO-ONNX-Java 性能监控指标全面解析

YOLO-ONNX-Java 性能监控指标全面解析 概述 在计算机视觉应用中&#xff0c;性能监控是确保系统稳定运行的关键环节。YOLO-ONNX-Java 作为一个纯 Java 实现的 AI 视觉识别项目&#xff0c;提供了丰富的性能监控指标来帮助开发者优化系统性能。本文将深入解析该项目的性能监控指…...

RimSort:三分钟告别RimWorld模组管理噩梦的终极方案

RimSort&#xff1a;三分钟告别RimWorld模组管理噩梦的终极方案 【免费下载链接】RimSort RimSort is an open source mod manager for the video game RimWorld. There is support for Linux, Mac, and Windows, built from the ground up to be a reliable, community-manage…...