我有一个border
应用到我的应用程序的布局,其中左(西)面板是可折叠的,右(中)面板包含一个rallychart
组件。这个想法是,当左侧面板折叠时,用户将获得更大版本的图表,因为会有更多区域来绘制它。我遇到的问题是当左侧面板折叠时,图表不会重绘。这让我感到惊讶,因为如果以任何其他方式调整中心容器的大小(窗口大小更改),图表将重新绘制以自动填充较大的容器。
有没有办法强制rallychart
重绘?也许通过触发窗口大小更改事件触发的相同事件?
Rally.ui.Chart 包装了一个第三方组件的实例,它为底层的 Highchart 对象提供了一个 Ext 接口。
你可以得到这样的参考:
var chartWrapper = chart.down('highchart');
该组件的代码位于此处:https ://github.com/RallySoftware/Highcharts_ExtJs_4/blob/master/Chart/ux/HighChart.js
在那里,您可以看到它为调用 onResize 方法的窗口调整大小连接了一个处理程序。即使这被标记为私有,我认为这应该有效,并且是您的最佳选择。
chartWrapper.onResize();
看看这个问题的答案;它可能会让你到达那里:重新加载商店和刷新图表组件的组合。