基于vue 封装一个可以显示饼图折线图柱状图的echarts组件代码
时间: 2023-12-01 14:05:10 浏览: 101
基于vue的echarts组件封装,简单实用
没有问题,我可以帮您回答这个问题。以下是一份基于Vue封装的Echarts组件代码示例:
```vue
<template>
<div ref="echartsContainer" style="width: 100%; height: 100%;"></div>
</template>
<script>
import echarts from 'echarts'
export default {
name: 'EchartsComponent',
props: {
option: {
type: Object,
required: true
}
},
data () {
return {
echartsInstance: null,
resizeHandler: null
}
},
mounted () {
this.echartsInstance = echarts.init(this.$refs.echartsContainer)
this.echartsInstance.setOption(this.option)
this.resizeHandler = () => this.echartsInstance.resize()
window.addEventListener('resize', this.resizeHandler)
},
beforeDestroy () {
window.removeEventListener('resize', this.resizeHandler)
this.echartsInstance.dispose()
}
}
</script>
<style>
/* Optional CSS styling for the Echarts container */
</style>
```
这份代码定义了一个名为`EchartsComponent`的Vue组件,该组件需要传入一个`option`对象作为`props`,并使用该对象初始化Echarts实例。组件在挂载后会自动将容器大小调整为父元素大小,并在销毁前自动进行清理。通过传入不同的`option`对象,该组件可以用于显示饼图、折线图、柱状图等多种Echarts图表。希望这个代码能够对您有所帮助!
阅读全文