1. 最近用element UI tabs显示echarts图表,但一设置echarts图表的宽度为100%,图表的宽度就变为100px,在网上搜了很多解决方案,用到了echarts的resize函数,便在代码中添加:
    let _this = this;
    window.addEventListener("resize", function () {
        _this.siteLine.resize();
    }); 

        发现初始化的时候还是不行,但初始化后改变窗口的大小,图表的大小能够随着窗口大小的改变而改变,为了解决初始化的问题,尝试了很多方法,最终代码:

mounted: function () {
            let myChart = document.getElementById(('siteLine'));
            myChart.style.width = window.innerWidth - 230 + 'px';
            this.siteLine = echarts.init(myChart);
            setInterval(this.lineInit, 2000);
            let _this = this;
            window.addEventListener("resize", function () {
                let myChart = document.getElementById(('siteLine'));
                myChart.style.width = window.innerWidth - 230 + 'px';
                _this.siteLine.resize();
            });
        }

上面写的230指的是窗口左半部分列表的宽度,echarts图表占据剩余的宽度,如果除了echarts图表的宽度还有其他动态宽度,只需依次获取其他宽度,并用window.innerWidth减去即可

参考:点击打开链接

Logo

前往低代码交流专区

更多推荐