我第一次嘗試在angularjs。從子指令調用模塊控制器功能
我想創建一個指令,點擊後,調用在模型的控制器函數中聲明的函數。
這裏是我的簡化代碼:http://jsfiddle.net/vnj62xn8/
JS:
angular.module('tasks', [])
.controller('taskCtrl', function($scope){
$scope.complete = function(){
console.log('parent function');
}
})
.directive('taskList', function(){
return {
restrict: 'E',
scope: {
complete: '&'
},
template: '<button ng-click="complete()">Complete Task</button>',
controller: function($scope){
/*$scope.complete = function(){
console.log('child function');
}*/
}
}
});
HTML:
<div ng-app="tasks">
<task-list></task-list>
</div>
我看了其他Q /作爲SO,發現這似乎是最通用的解決方案,儘管它永遠不會調用taskCtrl控制器中的complete()函數。但是,如果未註釋,它將從指令的控制器調用complete()函數。我錯過了什麼?
您需要設置fu nciton綁定(for'complete:'&'')。 ' ' –
PSL
2014-10-28 18:22:22