范围。$ watch在成功更改变量

时间:2015-09-05 02:59:35

标签: angularjs angularjs-directive

我有一个指令,它从它的父控制器获取一个值。

<hack-chart-controls counttime="vm.countInMinutes"></hack-chart-controls>

在指令中,有一些scope值用于创建图表

scope.averageVbcCountPosition = { value: scope.counttime };
scope.averagePayPosition = { value: 12 };
scope.storeCountPosition = { value: 5 };

这些值用于传递给另一个子指令

<hack-annual-expenses-chart hack-employee-hourly-rate="averagePayPosition.value"
    hack-vbc-average-count-time="vbcCountTime.value"
    hack-average-count-time="averageCountPosition.value"
    hack-stores="storeCountPosition.value"
    hack-store-daily-balances="dailyBalancesCountPosition.value"
    hack-years="savingsProjectionPosition.value">

正如您所看到的,其中一个取决于传入的变量。我正在使用scope.$watch来观察变量何时发生变化

scope.$watch('counttime', function(value) {
    scope.counttime = value;
});

this link成功更新为有用,但图表不会更新。

我尝试了scope.$apply()并收到错误$digest() is already in progress错误。我错过了什么?如何让指令基本上重新渲染图表?

0 个答案:

没有答案