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

uniapp中使用echarts 完整步骤,包括报错以及解决方案

在我们日常可能会有小程序中要使用echarts,我今天总结了一下整个引入的步骤

首先echarts - DCloud 插件市场在插件市场里面导入进项目,我这边用的是vue3的以及主要开发小程序,就直接放我的案例了

按照上面的步骤,在样式部分这样写

<view style="width:750rpx; height:750rpx"><l-echart ref="chartRef"></l-echart></view>

然后在js部分引入

// 小程序 二选一 
// 插件内的 二选一 
const echarts = require('../../uni_modules/lime-echart/static/echarts.min');
// 自定义的 二选一 下载后放入项目的路径
const echarts = require('xxx/xxx/echarts');

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// 非小程序 
// 需要在控制台 输入命令:npm install echarts
import * as echarts from 'echarts'

 下面是使用方法


const chartRef = ref(null)
const option = {
    tooltip: {
        trigger: 'axis',
        axisPointer: {
            type: 'shadow' 
        },
        confine: true
    },
    legend: {
        data: ['热度', '正面', '负面']
    },
    grid: {
        left: 20,
        right: 20,
        bottom: 15,
        top: 40,
        containLabel: true
    },
    xAxis: [
        {
            type: 'value',
            axisLine: {
                lineStyle: {
                    color: '#999999'
                }
            },
            axisLabel: {
                color: '#666666'
            }
        }
    ],
    yAxis: [
        {
            type: 'category',
            axisTick: { show: false },
            data: ['汽车之家', '今日头条', '百度贴吧', '一点资讯', '微信', '微博', '知乎'],
            axisLine: {
                lineStyle: {
                    color: '#999999'
                }
            },
            axisLabel: {
                color: '#666666'
            }
        }
    ],
    series: [
        {
            name: '热度',
            type: 'bar',
            label: {
                normal: {
                    show: true,
                    position: 'inside'
                }
            },
            data: [300, 270, 340, 344, 300, 320, 310],
        },
        {
            name: '正面',
            type: 'bar',
            stack: '总量',
            label: {
                normal: {
                    show: true
                }
            },
            data: [120, 102, 141, 174, 190, 250, 220]
        },
        {
            name: '负面',
            type: 'bar',
            stack: '总量',
            label: {
                normal: {
                    show: true,
                    position: 'left'
                }
            },
            data: [-20, -32, -21, -34, -90, -130, -110]
        }
    ]
};

onMounted( ()=>{
    // 组件能被调用必须是组件的节点已经被渲染到页面上
    setTimeout(async()=>{
        if(!chartRef.value) return
        const myChart = await chartRef.value.init(echarts)
        myChart.setOption(option)
    },300)
})

按照上面流程可能会不出现实例,可能会获取到的ref为null,这是正常的

有可能导入的时候这个组件没注册,下面我们找下导入的组件位置,手动给它注册一下

 

找到这个文件的位置,然后我们直接在main.js中注册

下面是main.js部分的代码

 

import lEchart from '@/uni_modules/lime-echart/uni_modules/lime-echart/components/l-echart/l-echart.vue'

Vue.component('l-echart', lEchart)

然后前面的示例就能出现了


http://www.kler.cn/news/312920.html

相关文章:

  • 实验一:Windows下的IIS服务器配置和管理
  • 50页PPT麦肯锡精益运营转型五步法
  • 考研报名确认上传身份证户口本学历证明照片如何压缩裁剪
  • 聊聊Thread Local Storage
  • 代码随想录训练营第34天| 62.不同路径 、63. 不同路径 II
  • 【STL】map和set相关知识详细梳理
  • 4、论文阅读:基于深度学习和成像模型的水下图像增强
  • 21、Tomato
  • weblogic CVE-2017-3506 靶场攻略
  • 【随手笔记】使用J-LINK读写芯片内存数据
  • C++——类和对象
  • 鸿蒙HarmonyOS之使用ArkTs语言获取应用版本等信息
  • AI健身体能测试之基于paddlehub实现引体向上计数个数统计
  • 享元模式详解:解锁高效资源管理的终极武器
  • 技术美术百人计划 | 《4.1 Bloom算法》笔记
  • 【图像检索】基于傅里叶描述子的形状特征图像检索,matlab实现
  • 新品亮相|美格智能SLM530/SLM530P智能模组,助力金融新零售智慧升级
  • 线性规划中可行域为什么一定是凸的--证明
  • Vue2中路由的使用
  • 软件设计画图,流程图、甘特图、时间轴图、系统架构图、网络拓扑图、E-R图、思维导图
  • 高速CT滑环的特点分析
  • 在Python中优雅地打开和操作RDS
  • macOS平台(intel)编译MAVSDK安卓平台SO库
  • 《Discriminative Class Tokens for Text-to-Image Diffusion Models》ICCV2023
  • 【GitHub】如何将本地项目推送到GitHub 终端 or IDEA
  • 使用 Docker 容器化 .NET 应用:从进阶到高深
  • 【高分系列卫星简介——高分一号(GF-1)】
  • Spring MVC 启动与请求处理流程解析
  • STM32G431RBT6(蓝桥杯)串口(发送)
  • git使用“保姆级”教程2——初始化及工作机制解释