在mpvue中使用图表插件wx-charts

文章提供:林子翔

前言

大家在原生小程序中需要用到图表插件时,可能会选择echarts或者由xiaolin3303开发的一款wx-charts插件, 本文为大家剖析一下如何在开源小程序框架mpvue中使用wx-charts插件

原理

mpvue编译后的代码是原生的小程序代码,它把页面的wxml内容全部封成了template引入到page中。既然是最后会转为原生代码,就支持使用原生的canvas组件,这一点也是官方明确肯定的。所以在mpvue中使用wx-charts就跟在原生中使用一样,除了注意事件的绑定使用mpvue的方式即可。

步骤

git clone git@github.com:xiaolin3303/wx-charts.git

在clone下来的dist文件夹获得wxcharts-min.js(混淆版本),如果需要进行二次开发,可以使用wxcharts.js然后修改 内容,达到定制化的目的,修改完后可以利用在线混淆进行重新混淆使用。

<!--/src/pages/bar/bar.vue template中内容 --><canvas canvas-id="areaCanvas" class="canvas" @touchstart="touchHandler"></canvas>
// /src/pages/bar/bar.vue script中内容var wxCharts = require('@/lib/wxcharts-min.js');  //该路径为该js文件在你项目中的路径export default {	name: "bar",
	data() {		return {			bar: null
		}
	},		
	mounted: function (e) {		var windowWidth = 320;		try {			var res = wx.getSystemInfoSync();
			windowWidth = res.windowWidth;
		} catch (e) {			console.error('getSystemInfoSync failed!');
		}			
		this.bar = new wxCharts({			canvasId: 'areaCanvas',			type: 'area',			categories: ['1', '2', '3', '4', '5', '6'],			animation: true,			series: [{				name: '成交量1',				data: [32, 45, null, 56, 33, 34],				format: function (val) {					return val.toFixed(2) + '万';
				}
			}],			yAxis: {				title: '成交金额 (万元)',				format: function (val) {					return val.toFixed(2);
				},				min: 0,					fontColor: '#8085e9',					gridColor: '#8085e9',					titleFontColor: '#f7a35c'
				},				xAxis: {					fontColor: '#7cb5ec',					gridColor: '#7cb5ec'
				},				extra: {					legendTextColor: '#cb2431'
				},				width: windowWidth,				height: 200
			});
		},		methods: {			touchHandler: function (e) {				console.log(this.bar.getCurrentDataIndex(e));				this.bar.showToolTip(e);
			}   
		}
	}

总结

该图表支持tooltip,这个功能比较实用,目前mpvue-echarts是不支持这一点的,但是echarts会更加美观, 可以根据需求取舍

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值