2015-01-14 2 views
0

У меня есть директива следующим образом,вызова Функции написано в директиве от другого контроллера

angular.module('test.directives').directive("resize", function($window) { 
     return function(scope, element) { 
     var w; 
     w = angular.element($window); 
     scope.getWindowDimensions = function() { 
      return { 
      h: w.height(), 
      w: w.width() 
      }; 
     }; 
     }; 
    }); 

Как я могу назвать scope.getWindowDimensions() из другого контроллера? Является ли это возможным?

Пожалуйста, помогите, Спасибо.

+1

Вы не должны действительно сделать это. Контроллеры не должны вызывать функции определенной директивы. Если вам нужна общая функция для обоих, вы можете включить эту функцию в службу и ввести ее как в контроллер, так и в директиву. –

ответ

0

Да, вы не должны, но если вы хотите, вы можете сделать это Как показано в этом примере: -

You need to use two way binding by 
scope: { 
     control: '='//use for two way binding 
    } 

http://plnkr.co/edit/JPh3wZ?p=preview

Смежные вопросы