我有一个border
布局应用于我的应用,其中左(西)面板是可折叠的,右(中)面板包含rallychart
组件。这个想法是,当左侧面板折叠时,用户将获得更大版本的图表,因为将有更多区域来绘制它。我遇到的问题是,当左侧面板折叠时,图表不会重绘。这让我感到惊讶,因为如果中心容器以任何其他方式调整大小(窗口大小更改),图表将重新绘制以自动填充更大的容器。
有没有办法可以强制rallychart
重绘?也许通过触发窗口大小更改事件触发的相同事件?
答案 0 :(得分:2)
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();
答案 1 :(得分:1)
看看this question的答案;它可能会让你到达:重新加载商店和刷新图表组件的组合。