1、不要 重读 innit – echarts
2、用 win.addEventListener(‘resize’, function() { }) 监听不能实现 自适应
3、需要使用 插件 element-resize-detector 插件监听使用 :
插件: https://www.npmjs.com/package/element-resize-detector
下载:npm install element-resize-detector
作用: 监听 dom 大小变化
代码如下 :
data(){
return {
windowWidth:null
}
},
methods:{
setE(){
var chartDom = document.getElementById('main');
this.myChart = echarts.init(chartDom);
var option ={} // 注意 需要内容
this.myChart.setOption(option)
}
},
mounted() {
var that = this;
var elementResizeDetectorMaker = require("element-resize-detector"); //引入 监听dom元素尺寸变化的依赖
var erd = elementResizeDetectorMaker();
// 此处的id 就是要监听的dom - id
erd.listenTo(document.getElementById("details"), function (element) {
that.$nextTick(function () {
that.windowWidth = window.fullWidth; // 宽
});
});
},
watch: {
windowWidth(val) {
if(this.myChart) {
this.myChart.resize()
}
console.log(val,'dssdsdsdsdsddddddd')
}
}