面试题答案
一键面试- 在Vue组件中引入Echarts
在组件的
script
标签中导入Echarts库:
import echarts from 'echarts'
- 在组件中初始化Echarts实例
在
mounted
生命周期钩子中初始化Echarts实例并绘制图表。假设模板中有一个div
用于承载图表:
<template>
<div id="chart" ref="chart"></div>
</template>
<script>
import echarts from 'echarts'
export default {
mounted() {
this.chart = echarts.init(this.$refs.chart)
const option = {
// 配置图表选项
}
this.chart.setOption(option)
}
}
</script>
- 在组件销毁时释放资源
在
beforeDestroy
生命周期钩子中进行资源释放。Echarts实例提供了dispose
方法来释放内存和相关资源:
beforeDestroy() {
if (this.chart) {
this.chart.dispose()
this.chart = null
}
}
通过上述步骤,在Vue组件销毁时,可以正确释放Echarts相关资源,避免内存泄漏。具体涉及到的操作是在mounted
钩子中初始化图表实例,在beforeDestroy
钩子中调用插件(Echarts)自身提供的dispose
方法释放资源,并将实例引用置为null
。