// 混入代码 resize-mixins.js import { debounce } from '@/utils/index'; const resizeChartMethod = '$__resizeChartMethod'; export default { data() { // 在组件内部将图表init的引用映射到chart属性上 return { chart: null, }; }, created() { window.addEventListener('resize', this[resizeChartMethod], false); }, beforeDestroy() { window.removeEventListener('reisze', this[resizeChartMethod]); }, methods: { // 通过lodash的防抖函数来控制resize的频率 [resizeChartMethod]: debounce(function() { if (this.chart) { this.chart.resize(); } }, 100), }, };