广告:宝塔Linux面板高效运维的服务器管理软件 点击【 https://www.bt.cn/p/uNLv1L 】立即购买
本篇文章给大家介绍一下微信小程序中使用 npm 引入 ECharts 的方法,希望对大家有所帮助!
Apache ECharts 官方提供了在微信小程序中使用Echarts 的代码实例和 ec-canvas
组件,但是未发布 npm
包。
此项目在官方代码之上修改支持 ec-canvas
组件传入 echarts
可支持 npm
引入 echarts
或本地自定义构建后的 echarts
,更符合 Web
开发体验。
并且发布 npm
包,支持小程序通过 npm 安装使用。并支持 Taro
按需引入 echarts
减小打包体积。【相关学习推荐:小程序开发教程】
npm install echarts-for-weixin登录后复制登录后复制登录后复制小程序引用
参考代码 tools/demo
1、首先在页面的 json 文件加入 usingComponents 配置字段
{ "usingComponents": { "ec-canvas": "echarts-for-weixin" }}登录后复制登录后复制登录后复制
2、项目根目录创建 package.json
并执行 npm install 安装依赖
{ "dependencies": { "echarts": "^5.1.2", "echarts-for-weixin": "^1.0.0" }}登录后复制
3、小程序开发者工具中构建 npm
点击开发者工具中的菜单栏:工具 --> 构建 npm
4、在页面中引入 echarts
,可以从 npm
引入 echarts
,也可以引入本地自定义构建的 echarts
以减小体积
import * as echarts from 'echarts' // 从 npm 引入 echartsimport * as echarts from './echarts' // 或者从本地引入自定义构建的 echarts登录后复制登录后复制
5、然后可以在对应页面的 wxml 中直接使用该组件
<view class="container"> <ec-canvas id="mychart-dom-bar" canvas-id="mychart-bar" echarts="{{ echarts }}" ec="{{ ec }}"></ec-canvas></view>登录后复制
6、ec-canvas
的具体用法和如何初始化图表请参考 Echarts 官方小程序示例
import * as echarts from 'echarts'let chart = null;function initChart(canvas, width, height, dpr) { chart = echarts.init(canvas, null, { width: width, height: height, devicePixelRatio: dpr // new }); canvas.setChart(chart); var option = { tooltip: { trigger: 'axis', axisPointer: { // 坐标轴指示器,坐标轴触发有效 type: 'shadow' // 默认为直线,可选为:'line' | 'shadow' }, confine: true }, legend: { data: ['热度', '正面', '负面'] }, grid: { left: 20, right: 20, bottom: 15, top: 40, containLabel: true }, xAxis: [ { type: 'value', axisLine: { lineStyle: { color: '#999' } }, axisLabel: { color: '#666' } } ], yAxis: [ { type: 'category', axisTick: { show: false }, data: ['汽车之家', '今日头条', '百度贴吧', '一点资讯', '微信', '微博', '知乎'], axisLine: { lineStyle: { color: '#999' } }, axisLabel: { color: '#666' } } ], series: [ { name: '热度', type: 'bar', label: { normal: { show: true, position: 'inside' } }, data: [300, 270, 340, 344, 300, 320, 310], itemStyle: { // emphasis: { // color: '#37a2da' // } } }, { name: '正面', type: 'bar', stack: '总量', label: { normal: { show: true } }, data: [120, 102, 141, 174, 190, 250, 220], itemStyle: { // emphasis: { // color: '#32c5e9' // } } }, { name: '负面', type: 'bar', stack: '总量', label: { normal: { show: true, position: 'left' } }, data: [-20, -32, -21, -34, -90, -130, -110], itemStyle: { // emphasis: { // color: '#67e0e3' // } } } ] }; chart.setOption(option); return chart;}Page({ data: { echarts, ec: { onInit: initChart } }, onReady() { setTimeout(function () { // 获取 chart 实例的方式 console.log(chart) }, 2000); }})登录后复制Taro 引用
参考代码 examples/taro
npm install echarts-for-weixin登录后复制登录后复制登录后复制在项目根目录中新建文件
project.package.json
或者自定义命名,此文件是小程序的 package.json
,并在下一步中添加小程序自定义构建 npm 方式。这么做的目的是为了能够共享项目 node_modules
project.package.json
{ "dependencies": { "echarts": "^5.1.2", "echarts-for-weixin": "^1.0.2" }}登录后复制在
project.config
的 setting
中添加小程序自定义构建 npm 方式,参考 自定义 node_modules 和 miniprogram_npm 位置的构建 npm 方式{ "setting": { "packNpmManually": true, "packNpmRelationList": [ { "packageJsonPath": "../project.package.json", "miniprogramNpmDistDir": "./" } ] }}登录后复制执行
Taro
的开发或者打包命令进行项目开发npm run dev:weapp登录后复制登录后复制小程序开发者工具中构建 npm。注意:小程序开发工具打开的项目目录是
dist
文件夹点击开发者工具中的菜单栏:工具 --> 构建 npm
引入 Echarts在全局的app.config.js
中添加或者在单个需要使用到 echarts
的页面配置中添加引用组件{ "usingComponents": { "ec-canvas": "echarts-for-weixin" }}登录后复制登录后复制登录后复制在页面中引入
echarts
,可以从 npm
引入 echarts
,也可以引入本地自定义构建的 echarts
以减小体积import * as echarts from 'echarts' // 从 npm 引入 echartsimport * as echarts from './echarts' // 或者从本地引入自定义构建的 echarts登录后复制登录后复制将引入的
echarts
传给组件{ "usingComponents": { "ec-canvas": "echarts-for-weixin" }}2登录后复制登录后复制
ec-canvas
的具体用法和如何初始化图表请参考 Echarts 官方小程序示例示例代码
{ "usingComponents": { "ec-canvas": "echarts-for-weixin" }}3登录后复制
参考代码 examples/taro-manual-load
注意:小程序开发者工具打开的项目目录是打包后的 dist
目录
1、安装依赖
npm install echarts-for-weixin登录后复制登录后复制登录后复制
2、在项目根目录中新建文件 project.package.json
或者自定义命名,此文件是小程序的 package.json
,并在下一步中添加小程序自定义构建 npm 方式。并配置 config/index.js
中的 copy
选项,将 project.package.json
复制到 dist
目录下并且重命名为 package.json
。并且复制 node_modules/echarts-for-weixin
至 dist/node_modules/echarts-for-weixin
避免在小程序开发者工具中打开的项目重新安装依赖
project.package.json
{ "usingComponents": { "ec-canvas": "echarts-for-weixin" }}5登录后复制
config/index.js
{ "usingComponents": { "ec-canvas": "echarts-for-weixin" }}6登录后复制
3、在 project.config
的 setting
中添加小程序自定义构建 npm 方式,参考 自定义 node_modules 和 miniprogram_npm 位置的构建 npm 方式
{ "usingComponents": { "ec-canvas": "echarts-for-weixin" }}7登录后复制
4、执行 Taro
的开发或者打包命令进行项目开发
npm run dev:weapp登录后复制登录后复制
5、小程序开发者工具中构建 npm。注意:小程序开发工具打开的项目目录是 dist
文件夹
点击开发者工具中的菜单栏:工具 --> 构建 npm
引入 Echarts1、在全局的 app.config.js
中添加或者在单个需要使用到 echarts
的页面配置中添加引用组件
{ "usingComponents": { "ec-canvas": "echarts-for-weixin" }}登录后复制登录后复制登录后复制
2、在页面中引入 echarts/core
和需要的组件,Taro 打包会只打包引入的组件,这样达到按需引入的目的
{ "dependencies": { "echarts": "^5.1.2", "echarts-for-weixin": "^1.0.0" }}0登录后复制
3、将引入的 echarts
传给组件
{ "usingComponents": { "ec-canvas": "echarts-for-weixin" }}2登录后复制登录后复制
4、ec-canvas
的具体用法和如何初始化图表请参考 Echarts 官方小程序示例
{ "dependencies": { "echarts": "^5.1.2", "echarts-for-weixin": "^1.0.0" }}2登录后复制
5、可以查看小程序开发者工具中的依赖分析,确定文件大小以及是否正确按需引入
更多编程相关知识,请访问:编程入门!!
以上就是详解微信小程序中如何安装和引用ECharts?的详细内容,更多请关注9543建站博客其它相关文章!
发表评论