首页 > 其他分享 >vue使用echart示例

vue使用echart示例

时间:2024-09-03 13:46:52浏览次数:3  
标签:vue const echart 示例 text myChart value import type

<template>
    <el-card shadow="never">
        <template #header>
            <div class="flex justify-between">
                <span class="text-sm">订单统计</span>
                <div>
                    <el-check-tag :checked="current == item.value" type="primary" @change="onChange(item.value)"
                        v-for="(item, index) in options" :key="index" class="m-1">
                        {{ item.text }}
                    </el-check-tag>
                </div>

            </div>
        </template>
        <!-- card body -->
        <div id="chart" style="width:100%;height:300px" ref="el"></div>
    </el-card>

</template>
<script setup>
import { ref, onMounted, onBeforeUnmount } from 'vue';
import * as echarts from 'echarts';
import { getStatistics3 } from '~/api';
//图形大小监测
import { useResizeObserver } from '@vueuse/core'
const current = ref("week")
const options = [
    { text: "近1个月", value: "month" },
    { text: "近1周", value: "week" },
    { text: "近24小时", value: "hour" }]


//图形生成
var myChart = null;

//获取数据
function getData() {

    let option = {
        xAxis: {
            type: 'category',
            data: []
        },
        yAxis: {
            type: 'value'
        },
        series: [
            {
                data: [],
                type: 'bar'
            }
        ]
    };
    // 加载loading
    myChart.showLoading();
    getStatistics3(current.value).then(res => {
        let x = res.x;
        let y = res.y;
        option.xAxis.data = x;
        option.series[0].data = y;
        myChart.setOption(option);
    }).finally(() => {
        // 消除loading
        myChart.hideLoading();
    }

    )
}
// 趋势数据切换
const onChange = (type) => {
    current.value = type;
    // 重新加载趋势图
    getData()
}
//图形大小监测
const el = ref(null)
useResizeObserver(el, (entries) => {
    //浏览器变换时,重新设置图形大小
    myChart.resize()

})

// 挂载时候获取数据
onMounted(() => {
    var chartDom = document.getElementById('chart');
    myChart = echarts.init(chartDom);
    //获取数据
    getData()

})

// 离开前消除图,防止趋势图白屏
onBeforeUnmount(() => {
    if (myChart) echarts.dispose();
})

</script>

 

标签:vue,const,echart,示例,text,myChart,value,import,type
From: https://www.cnblogs.com/shisanjun2008/p/18394403

相关文章

  • 25. shell当中的函数详解,管理函数,定义函数,交互式环境调用函数,查看删除函数,脚本中的函
    文章目录前言管理函数定义函数交互式环境调用函数查看函数删除函数脚本中的函数定义及使用函数使用函数文件环境函数示例总结友情链接前言函数function是由若干条shell命令组成的语句块,实现代码重用和模块化编程它与shell程序形式上是相似的,不同的是它不是一个单独的进程,不能独......
  • 计算机毕业设计django+vue高校二手书买卖系统的设计与实现【开题+论文+程序】
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着高等教育的普及和高校学生数量的增加,二手书市场在高校内逐渐兴起。然而,传统的二手书交易方式往往存在信息不对称、交易效率低下等问题......
  • 32.全网最详细trap讲解,trap语法格式,信号和用途,最常用的信号,trap常用的命令,ctrl +
    文章目录语法详解trap格式信号和用途最常用的信号trap常用的命令示例ctrl+c示例信号屏蔽和恢复trap-示例debug示例exit示例return示例综合案例案例1案例2案例3总结友情链接信号捕捉trap,它用于捕获指定的信号并执行预定义的命令。比如,按Ctrl+C会使脚本终止执行,实际上系统发......
  • 使用同步锁的代码示例1
    使用同步锁的代码示例packageorg.zyf.javabasic.thread.lock.opti;importjava.util.concurrent.locks.ReentrantLock;/***@program:zyfboot-javabasic*@description:使用了ReentrantLock来保护对共享资源(counter)的访问,确保同一时间只有一个线程可以对计数器......
  • 使用同步锁的代码示例26
    使用同步锁的代码示例packageorg.zyf.javabasic.thread.lock.opti;importjava.util.concurrent.locks.ReentrantLock;/***@program:zyfboot-javabasic*@description:使用了ReentrantLock来保护对共享资源(counter)的访问,确保同一时间只有一个线程可以对计数器......
  • 使用同步锁的代码示例30
    使用同步锁的代码示例packageorg.zyf.javabasic.thread.lock.opti;importjava.util.concurrent.locks.ReentrantLock;/***@program:zyfboot-javabasic*@description:使用了ReentrantLock来保护对共享资源(counter)的访问,确保同一时间只有一个线程可以对计数器......
  • 3--Web前端开发-前端工程化,vue项目
    目录端口配置element快速入门table表格组件分页组件Dialog对话框组件表单组件端口配置在vue.config.js中更改源代码为const{defineConfig}=require('@vue/cli-service')module.exports=defineConfig({transpileDependencies:true})更改为const......
  • ssm家政公司服务平台的设计与实现+vue
    文章目录目录文章目录论文目录项目介绍开发环境系统实现论文参考论文目录目  录1绪论1.1 选题背景1.2选题意义1.3研究内容2 系统开发技术2.1MySQL数据库2.2IDEA简介2.3SSM框架2.4Vue框架3系统分析3.1可行性研究3.1.1经济可行......
  • ssm基于web的电影购票系统+vue
    文章目录目录文章目录论文目录项目介绍开发环境系统实现论文参考论文目录摘 要Abstract第1章 绪论1.1 课题背景1.2课题意义1.3研究内容第2章 开发环境与技术2.1Java语言2.2 MYSQL数据库2.3IDEA开发工具2.4SSM框架第3章 系统分析......
  • #基于JavaWeb开发的Java+SpringBoot+vue实现图书借阅销售商城
    基于JavaWeb开发的Java+SpringBoot+vue实现图书借阅销售商城......