Извините Если этот вопрос задан раньше, но моя проблема немного другая и надеюсь, что кто-то может мне помочь.Функция вызова внутри директивы в Angular
1) У меня есть Директива, которая имеет много кнопок. Я хочу вызвать функцию на этих кнопках и внутри директивы. Но я не знаю, как это сделать.
// Directive for the login header to avoid the duplication of the code
angular.module('App').directive('mainHeader',function(){
return{
restrict: 'AE',
template:'<h1 class="logo"> My App </h1>'+
'<button class="btn btn-primary">New User</button>'+
'<button class="btn btn-primary">New Product</button>'+
'<span class="dropdown" on-toggle="toggled(open)">'+
'<a href class="dropdown-toggle">'+
'<img class="userProfile" src="" alt="User Profile">'+
'<b class="caret"></b>'+
'</a>'+
// Here on my profile ????
'<ul class="dropdown-menu pull-right">'+
'<li> My Profile </a> </li>'+
'<li class="divider"></li>'+
// Here on my logout ??????
// This does not work
'<li> <a href="" ng-click="logOut()"> Sign Out </li>'+
'</ul>'+
'</span>'
}
});
Мой контроллер
(function() {
var logOutController = function($scope){
$scope.logOut = function(){
// Want to call this
}
logOutController .$inject = ['$scope'];
angular.module('App').controller('logOutController ',logOutController);
}());
И моя точка зрения будет только одна линия
<div main-header></div>
Я не знаю, как это сделать
Update 1: -
Пожалуйста, взгляните на P lunker http://plnkr.co/edit/YONVyVvNm4pQGFMU6SkG?p=preview.
Это вещь, но что другие кнопки? который нажимает на нее? и его по той же директиве – GeekOnGadgets
К сожалению, об этом я этого не видел. Является ли 'dropdown' другой директивой? Вам нужно будет показать остальную часть кода для 'mainHeader', чтобы действительно рассказать. Однако это должен быть аналогичный подход. –
Nope все на той же директиве. И внутри этой директивы есть кнопки, и я хочу называть разные функции на этих кнопках. Таким образом, дублирование кода не происходит. – GeekOnGadgets