2016-09-25 2 views
0
.directive('phoneType', [function() { 
    return { 
     scope: { 
      phoneNumber: '=phoneType' 
     } 
     link: function (scope, element, attrs) { 
      // now do stuff with the number, you can access it through the scope 
      scope.phoneNumber // contains the number 
      scope.vm.somethingInMyController // vm is undefined 
     } 
    }; 
}]) 

Как достичь обоего phoneType и vm переменных в моей директиве?Угловой: Как получить родитель и объем элемента в директиве

+0

Попробуйте console.log сферу. $ Родительским. –

ответ

1

Как вы хотите, чтобы иметь изолированную область действия, вы должны передать требуемые данные, чтобы директировать его свойствами scope только через свой атрибут. Доступ к родительской (с использованием $ parent) области из директивы будет тесно связан с родительской областью, предполагающей некоторое соглашение об именах.

Markup

<div phone-type 
    phone-number="vm.myPhoneNumber" 
    something-more="vm.somethingInMyController"> 
</div> 

Директива

scope: { 
    phoneNumber: '=phoneType', 
    somethingMore: '=' //pass more data here 
} 
Смежные вопросы