1
我有一个指令,是需要驻留在其上的变量是父控制器混合隔离范围和controllerAs语法
<hack-chart-controls counttime="vm.countInMinutes"></hack-chart-controls>
指令:
function hackChartControls($log, $parse) {
var directive = {
restriction: 'AE',
scope: {
counttime: '='
},
templateUrl: '/app/components/hackChartControls.html',
link: link
};
return directive;
基于this answer我能当观看该指令中的变量发生变化。
但是,在指令标记中,因为我使用ControllerAs语法,所以我使用vm
作为我的范围变量。例如:
<div class="close"><i class="fa fa-close" ng-click="vm.close()"></i></div>
之前作出scope: { counttime: '=' }
变化,因为它继承了父范围而无需分离的范围,这些ng-click
功能的工作就好了。
我怎样才能让click
函数重新工作?
这是哪里'NG-click'?这是“hackChartControls.html”模板的一部分吗?然后,在指令的隔离范围内没有定义'vm'。相反,只要执行'ng-click =“close()”' –