京东最新版taro3.5.4中使用vue3开发微信小程序的echarts图表

简介: 查看到github官网github.com/NervJS/taro… 前几天使用的3.5.3版本,是有这个bug的,将版本降低到3.5.2 果然就可以了。这几天taro官网出了3.5.4版本,也是没问题了。

image.png


大家好,我是 那个曾经的少年回来了。10年前我也曾经年轻过,如今已步入被淘汰的年龄,但如下幡然醒悟,所以活在当下,每天努力一点点,来看看2024年的时候自己会是什么样子吧,2024年的前端又会是什么样子,而2024年的中国乃至全球又会变成什么样子,如果你也有想法,那还不赶紧行动起来。期待是美好的,但是更重要的是要为美好而为之奋斗付诸于行动。


本文所涉及到的所有源码已开源: github.com/aehyok/taro…


1、安装


// 全局安装脚手架,后面创建项目方便
npm i -g @tarojs/cli
// 查看版本,确认安装是否成功
taro -v


我目前的版本是3.5.4,前几天写文章的时候用的是3.5.3.


image.png


2、创建项目


taro init taro3-vue3-demo



image.png


pnpm i
pnpm dev:weapp  // 后面我把命令改为了start


然后在微信开发者工具中打开dist会报如下错误


image.png


查看到github官网github.com/NervJS/taro… 前几天使用的3.5.3版本,是有这个bug的,将版本降低到3.5.2 果然就可以了。这几天taro官网出了3.5.4版本,也是没问题了。

3、taro3 vue3 echarts


关于echarts在微信小程序中如何使用,官网这里有一个简单的说明 echarts.apache.org/handbook/zh…。 更多的详情可以查看github上的开源项目 github.com/ecomfe/echa…


通过梳理和尝试,终于在微信小程序中可以使用echarts了。


4、复制ec-vancas到项目中


首先我把echarts-for-weixin开源项目下载了下来,然后把 ec-canvas 整个文件夹拷贝到项目的 src/components下, 目录如下所示


image.png


5、当前页面引入


在当前页面的index.config.ts文件中添加 usingComponents,引入echarts组件,也就是我们复制到components的组件


module.exports = {
  navigationBarTextStyle: 'black',
  navigationBarTitleText: 'echarts地图示例',
  backgroundColor: '#eeeeee',
  backgroundTextStyle: 'light',
  usingComponents: {
    'ec-canvas': '../../components/ec-canvas/ec-canvas'
  }
}


6、当前组件中使用


<template>
  <view class="echarts">
    <ec-canvas id="chart-dom-area" canvas-id="chart-area" :ec="ec"></ec-canvas>
  </view>
</template>
<script lang="ts" setup>
  import { reactive } from 'vue'
  import * as echarts from '@/components/ec-canvas/echarts'
  import './index.scss'
  function initChart(canvas: any, width: any, height: any) {
    // echarts.init初始化
    const chart = echarts.init(canvas, null, {
      width,
      height
    })
    canvas.setChart(chart)
    const option = {
      xAxis: {
        type: 'category',
        boundaryGap: false,
        data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
      },
      yAxis: {
        type: 'value'
      },
      series: [
        {
          data: [820, 932, 901, 934, 1290, 1330, 1320],
          type: 'line',
          areaStyle: {}
        }
      ]
    }
    chart.setOption(option)
    return chart
  }
  const ec = reactive({
    onInit: initChart
  })
</script>


里面最重要的就是绑定 ec.onInit,然后剩下的echarts配置跟官网就没有区别了。


7、效果


最终页面的展示效果如下


image.png


8、注意事项


  • config/dev.js开启 production,会对代码进行压缩


env: {
    NODE_ENV: '"production"'
  },


  • 微信小程序中设置


image.png


  • 还可以通过微信小程序的分包来处理上传文件过大的问题


9、总结


有理由相信taro会越来越好吧,taro的体验性还是非常不错,接近使用vue3开发pc端和h5端,还能开发其他夸端的小程序,以及支持鸿蒙,不过我主要尝试的是微信小程序了。 本文所涉及到的所有源码已开源: github.com/aehyok/taro…


我的个人博客:vue.tuokecat.com/blog


我的个人github:github.com/aehyok


我的前端项目:pnpm + monorepo + qiankun + vue3 + vite3 + 工具库、组件库 + 工程化 + 自动化


不断完善中,整体框架都有了


在线预览:vue.tuokecat.com


github源码:github.com/aehyok/vue-…

目录
相关文章
|
1月前
|
人工智能 小程序 前端开发
一个小程序轻量AR体感游戏,开发实现解决方案
针对青少年运动兴趣不足问题,AR体感游戏凭借沉浸式互动体验脱颖而出。结合小程序“AI运动识别”插件与WebGL渲染技术,可实现无需外设的轻量化AR健身游戏,如跳糕、切水果等,兼具趣味性与锻炼效果,适用于儿童健身及职工团建,即开即玩,低门槛高参与。
|
1月前
|
移动开发 小程序 前端开发
小程序开发平台有哪些?哪个好
小程序的开发方式丰富多元,开发团队可根据自身的技术背景、项目具体需求以及资源状况,灵活挑选最为适宜的开发路径。以下将详细介绍几种主流的小程序开发方式。
242 1
|
1月前
|
运维 小程序 数据可视化
小程序开发平台有哪些?SaaS小程序制作平台哪个好
小程序开发模式详解:自主开发、SaaS小程序制作平台与外包全对比 选择合适的小程序开发模式,是项目成功的基石。这三种模式在成本、周期、控制力和灵活性上各有千秋,适用于不同阶段和不同类型的企业。下面我们将逐一深入剖析。
242 7
|
1月前
|
移动开发 小程序 前端开发
小程序快速开发平台有哪些?
小程序开发并非“一刀切”,需结合技术储备、资金预算、时间规划及功能需求等多维度因素综合考量。以下为您详细拆解五种主流开发方案及其适用场景,助您精准匹配开发路径。
164 3
|
1月前
|
移动开发 小程序 前端开发
小程序开发平台有哪些?小程序开发制作软件推荐
小程序开发方案全解析:5种主流方式与选择指南 小程序开发需根据技术能力、预算、时间及功能需求综合决策。以下为5种主流开发方案及适用场景分析:
365 0
|
2月前
|
消息中间件 人工智能 Java
抖音微信爆款小游戏大全:免费休闲/竞技/益智/PHP+Java全筏开源开发
本文基于2025年最新行业数据,深入解析抖音/微信爆款小游戏的开发逻辑,重点讲解PHP+Java双引擎架构实战,涵盖技术选型、架构设计、性能优化与开源生态,提供完整开源工具链,助力开发者从理论到落地打造高留存、高并发的小游戏产品。
|
3月前
|
小程序 JavaScript API
uni-halo + 微信小程序开发实录:我的第一个作品诞生记
这篇文章介绍了使用uni-halo框架进行微信小程序开发的过程,包括选择该框架的原因、开发目标以及项目配置和部署的步骤。
168 0
uni-halo + 微信小程序开发实录:我的第一个作品诞生记
|
6月前
|
小程序 前端开发 Android开发
小程序微信分享功能如何开发?开放平台已绑定仍不能使用的问题?-优雅草卓伊凡
小程序微信分享功能如何开发?开放平台已绑定仍不能使用的问题?-优雅草卓伊凡
1406 29
小程序微信分享功能如何开发?开放平台已绑定仍不能使用的问题?-优雅草卓伊凡

热门文章

最新文章

下一篇
oss云网关配置