1234567891011121314151617181920212223242526 |
- // 混入代码 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),
- },
- };
|