需要实现的功能是:在浮动对象上渲染了Echart 图表,当拖拽 浮动对象(浮动对象的大小尺寸发生变化)时,刷新浮动对象floatObject中的内容,内容是Echart 图表,去更新图表的内容(包括Echart 图表的大小)。用了 refreshContent()方法,自己重写了这个方法,在方法中,获取浮动对象的宽高给到 Echart ,去执行Echart 的refreshCharts。调用refreshContent 方法的代码如下:
- customFloatingObject.refreshContent = () => {
- console.log('refresh floating', customFloatingObject)
- const width = customFloatingObject.width()
- const height = customFloatingObject.height()
- let div = document.createElement('div')
- div.style.background = '#FFFFFF'
- let innerDiv = document.createElement('div')
- innerDiv.id = chart.id
- innerDiv.style.width = width + 'px'
- innerDiv.style.height = height + 'px'
- console.log(innerDiv)
- console.log(width, height)
- refreshCharts(chart.id, getChartDataFromTables(charts[key].source))
- console.log(customFloatingObject.content(div))
- }
复制代码 执行了这段代码,控制台报错:报超出最大调用栈,错误截图如下
项目代码在附件,具体的调用位置在437行:表明了出错的位置
|
|