UNPKG

vue-chartjs

Version:
64 lines (58 loc) 1.13 kB
import Vue from 'vue' import Chart from 'chart.js' import { mergeOptions } from '../helpers/options' export default Vue.extend({ render: function (createElement) { return createElement( 'div', [ createElement( 'canvas', { attrs: { id: this.chartId, width: this.width, height: this.height }, ref: 'canvas' } ) ] ) }, props: { chartId: { default: 'polar-chart', type: String }, width: { default: 400, type: Number }, height: { default: 400, type: Number } }, data () { return { defaultOptions: { } } }, methods: { renderChart (data, options) { let chartOptions = mergeOptions(this.defaultOptions, options) this._chart = new Chart( this.$refs.canvas.getContext('2d'), { type: 'polarArea', data: data, options: chartOptions } ) this._chart.generateLegend() } }, beforeDestroy () { this._chart.destroy() } })