奇怪的交互ng-hide和数据图表angular js

时间:2018-08-09 08:55:14

标签: html angularjs

这是我的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 = trueng-hide = false时,仅显示div,而不显示data-ac-chart

但是,如果我将鼠标悬停在页面上显示的其他图表上,该图表将以图形方式刷新并显示出来。

我无法找到一种刷新/重新绘制特定图表的方法,而无需刷新孔页或再次计算数据源(这确实有效,但这完全浪费了资源)。

有没有使用Ajax / JQuery而不使用HTML和AngularJS的简单方法吗?

2 个答案:

答案 0 :(得分:0)

将图表数据和配置放入函数中,并在将hideCaptiveRow的值设置为false时调用它。

$scope.renderChart = function(){
    var memCaptive.status.config ={.....}
}

设置hideCaptiveRow时,请调用函数:

$scope.hideCaptiveRow = false;
$scope.renderChart()

答案 1 :(得分:0)

解决方案

感谢您回答darkkinght,但仍然无法刷新图表。

但是我发现这是ng-show的一种错误。

ng-if 是解决方案。