这是我的HTML代码(请忽略未关闭的标签):
<div class="row" ng-hide="hideCaptiveRow">
<div class="col-md-6">
<div class="col-md-6">
<div data-ac-chart="'pie'"
data-ac-data="memCaptive.status.data"
data-ac-config="memCaptive.status.config"
class="chart">
</div>
</div>
</div>
</div>
现在,hideCaptiveRow
是一个布尔值,它会从下拉框选择的前端更改。它完美地隐藏并显示了div,但从ng-hide = true
到ng-hide = false
时,仅显示div,而不显示data-ac-chart
。
但是,如果我将鼠标悬停在页面上显示的其他图表上,该图表将以图形方式刷新并显示出来。
我无法找到一种刷新/重新绘制特定图表的方法,而无需刷新孔页或再次计算数据源(这确实有效,但这完全浪费了资源)。
有没有使用Ajax / JQuery而不使用HTML和AngularJS的简单方法吗?
答案 0 :(得分:0)
将图表数据和配置放入函数中,并在将hideCaptiveRow的值设置为false时调用它。
$scope.renderChart = function(){
var memCaptive.status.config ={.....}
}
设置hideCaptiveRow时,请调用函数:
$scope.hideCaptiveRow = false;
$scope.renderChart()
答案 1 :(得分:0)
解决方案
感谢您回答darkkinght,但仍然无法刷新图表。
但是我发现这是ng-show的一种错误。
ng-if 是解决方案。