首页 > 编程语言 >星云erp-手机版-echart兼容小程序方案

星云erp-手机版-echart兼容小程序方案

时间:2024-12-02 14:29:41浏览次数:7  
标签:erp echart formData charts 兼容 组件 push data option

本文基于移动版 配套 星云erp-手机版

众多拿到源码的同学反映以下问题

问题 

首页的曲线图标 在H5下可用,但发布为微信小程序后空白

解决方法:

步骤一:复现问题

原来是 小程序下通过 $refs获取不了 canvas 组件对象。

(经查阅资料后发现 小程序下 ref方式获取组件对象需要自定义组件,如果是uniapp内置组件会出现 这种情况)

到这里问题点已经定位好了,解决的思路也是出来了

步骤二:自定义echart 显示组件

如果自己自定义组件很麻烦,经过扫网最好锁定了 lime-echart: 百度图表 echarts,uniapp、taro 使用 echarts 图表,全面兼容各平台小程序、H5、APP、Nvue (gitee.com)

于是决定拿现成的。

把以上两个文件夹下载下来,放到 移动版 对应目录中

步骤三、引用组件,渲染数据
  1、 把echart引入项目中
import * as echarts from "@/static/echarts.min.js"
 2、把组定义组件引入首页中
	import LEchart from '@/components/l-echart/l-echart.vue';
<LEchart style="position: relative;" ref="chartLine"  @finished="loadData"></LEchart>
3、实现loadData方法,获取数据和渲染曲线图
	loadData() {
				orderChart()
					.then((res) => {
						this.formData = res.data;
						this.initChart();
					});
			},



			async initChart() {

				// 获取 canvas 元素对于 H5 环境的写法
				// const chartDom = document.getElementById('echartContainer');
				// 初始化 ECharts 实例
				//this.chartInstance = echarts.init(chartDom);

				 const chart = await this.$refs.chartLine.init(echarts);

				// 设置图表配置项
				const option = {
					title: {
						text: '',
					},
					tooltip: {},
					legend: {
						data: [],
					},
					xAxis: {
						data: [],
					},
					yAxis: {},
					series: [],
				};

				if (this.formData) {
					option.legend.data.push("今天订单");
					option.legend.data.push("今日退单");
					option.legend.data.push("本月订单");
					option.legend.data.push("本月退单");

					this.initSeriesData(this.formData.today.order.charts, "今天订单", option);
					this.initSeriesData(this.formData.today.returned.charts, "今日退单", option);
					this.initSeriesData(this.formData.sameMonth.order.charts, "本月订单", option);
					this.initSeriesData(this.formData.sameMonth.returned.charts, "本月退单", option);
				}

				chart.setOption(option);


			},

			initSeriesData(charts, name, option) {

				let seriedata = [];
				let xAxisData = [];
				let seriesdataUnitData = {
					name: name,
					type: 'line'
				};
				for (let item of charts) {
					seriedata.push(item.totalAmount)
					xAxisData.push(item.createDate);
				}
				this.$set(option.xAxis, "data", xAxisData);
				this.$set(seriesdataUnitData, "data", seriedata);
				option.series.push(seriesdataUnitData);
			},

			beforeDestroy() {
				// 销毁图表实例以避免内存泄漏
				if (this.chartInstance) {
					this.chartInstance.dispose();
					this.chartInstance = null;
				}
			},
4、重新运行到小程序(恭喜问题解决了)

标签:erp,echart,formData,charts,兼容,组件,push,data,option
From: https://blog.csdn.net/m0_37364725/article/details/144177313

相关文章

  • .NET开源低代码平台-Microi吾码-成功案例-工业生产管理ERP系统
    工业生产管理ERP系统简介系统截图项目在线demo试用简介一套非常强大的ERP系统,由予珩科技团队基于Microi吾码独立开发该企业开发的服装生产ERP【目前已售97套】:https://microi.blog.csdn.net/article/details/143637262共150+功能模块、216张物理表、63个接口引擎、1......
  • CoD, Towards an Interpretable Medical Agent using Chain of Diagnosis
    文章标题CoD,TowardsanInterpretableMedicalAgentusingChainofDiagnosis发表日期2024.9.15文章地址https://arxiv.org/abs/2407.133011.文章解决的问题诊断过程透明性缺失:LLMs在医疗诊断时类似于黑箱操作,虽能给出诊断......
  • 生鲜配送ERP系统_升鲜宝生鲜配送供应链管理系统Mysql表结构数据字典的生成小工具V0.01
    生鲜配送ERP系统_升鲜宝生鲜配送供应链管理系统Mysql表结构数据字典的生成小工具V0.01_SaaS全链路生鲜供应链管理系统_升鲜宝_15382353715 最近要交付升鲜宝生鲜配送供应链管理系统源代码给上海的客户,需要将蓝湖UI设计图及数据字典交接给别人。在网上找了半天没有找到合适的根......
  • 在 Windows Server 2025 安装过程中,确实有部分用户反馈提到,系统要求上传隐私数据(如匿
     在WindowsServer2025安装过程中,确实有部分用户反馈提到,系统要求上传隐私数据(如匿名硬件信息、诊断数据等)。虽然这些数据的上传本身是为了提升用户体验和系统兼容性,但如果你希望禁用或避免这些设置,可以通过修改注册表来实现。以下是通过注册表禁用隐私数据上传的步骤:1......
  • ECharts柱状图-极坐标系下的堆叠柱状图2,附视频讲解与代码下载
    引言: 在数据可视化的世界里,ECharts凭借其丰富的图表类型和强大的配置能力,成为了众多开发者的首选。今天,我将带大家一起实现一个柱状图图表,通过该图表我们可以直观地展示和分析数据。此外,我还将提供详细的视频讲解和代码下载链接,帮助大家快速上手。一、图表效果预览二、视......
  • reinterpret_cast解读
    reinterpret_cast 是C++中的一种强制类型转换运算符,用于在不同类型之间进行低级的指针或引用转换。与其他类型转换(如 static_cast 和 dynamic_cast)不同,reinterpret_cast 允许你进行更底层、更危险的转换,它直接将一个类型的位模式重新解释为另一个类型。这种转换通常用于底......
  • eNSP详细安装步骤,故障排错,包含安装包(兼容Windows11)
    本次使用天翼企业云盘进行软件分享(链接到网址框,稍等文件安全检查后,即可输入访问码下载)安装包:https://b.cloud.189.cn/s/vyMjequQJbuu密码:5ZNL本次使用系统步骤一:查看是否安装Hyper-V功能(1)搜索Windows功能(2)进入后检查看是否安装Hyper-V,如果安装则取消勾选。 步骤二:......
  • css中兼容ie浏览器的前缀是什么?
    CSS中兼容IE浏览器的前缀主要有:-ms-:这是IE浏览器专用的前缀,用于支持IE浏览器特有的CSS属性或属性值。例如:-ms-transform,-ms-filter。-o-:这是Opera浏览器较旧版本使用的前缀,现在Opera基于Chromium内核,所以这个前缀已经很少使用了。例如:-o-transform。-webkit-:这是......
  • 电磁兼容(EMC):锰锌VS镍锌铁氧体磁芯性能大比拼
    目录1、铁氧体磁芯简介2、铁氧体磁芯镍锌与锰锌的区别2.1、性能差异 2.1.1磁导率  2.1.2频率响应  2.1.3.损耗  2.1.4.阻抗  2.1.5.温度稳定性2.2、应用领域 2.2.1.锰锌铁氧体2.2.2.镍锌铁氧体3、总结1、铁氧体磁芯简介铁氧体......
  • ECharts 实战
    EChart资源Vue-EChart不想封装Echart,可以选用这种方案。Vue-ECharts是一个Vue组件,旨在简化在Vue应用中集成ECharts的过程。它封装了ECharts的初始化和使用逻辑,用户只需要在Vue模板中添加组件并传递相应的props,即可轻松创建图表。支持Vue2&Vue3&Nuxt3DO......