2014-07-14 3 views
1

작동하지 나는이AngularJS와 사용자 정의 지시어

<div class="xyz" orientable></div> 

처럼 내보기에이를 사용하여이

'use strict'; 

myApp.directive('orientable', function() { 
    return { 
    restrict: 'A', 
    link: function (scope, element, attrs, controller) { 
     element.bind("load", function (e) { 
     console.log('test'); 
     /* my code is here*/ 

     }); 

    } 
    } 
}); 

추가처럼 내 응용 프로그램 내 사용자 정의 속성을 추가하지만 링크 기능을 호출하지 않는 내가 잘못하고있다.

+2

브라우저 콘솔에 오류가 표시됩니까? 디버깅을 시도 했습니까? – akonsu

+1

jsfiddle이 있으십니까? – ForgetfulFellow

+0

앱이 실행되고 있습니까? 당신은 당신의 HTML 어딘가에'ng-app'를 가지고 있습니까? – Fresheyeball

답변

0

귀하의 바이올린이 작동하지 않습니다.

뭘 하려는지 모르지만, this one가 작동합니다.

그냥 원하는대로 수행하십시오 link 기능.

0

lante가 말했듯이, 당신의 바이올린은 부러졌습니다. 각도 또는 그 종속성 (쿠키 및 애니메이션)을로드하지 않습니다. 또 다른 메모에는 div에 대해 load이 없습니다. 당신이 restrictA

에게 당신을 변경할 필요가 그래서 그냥 당신은 속성으로 그것을 가지고 <orientable></orientable>

같이 요소 이름 인 또한 restrict: 'E'을했다 element.bind...

var myApp = angular.module('myApp', []); 

myApp.controller('myctrl', ['$scope','$rootScope',function($scope,$rootScope) 
{ 
    //controller logic 
}]); 

myApp.directive('orientable',function() {  
    return { 
     restrict:'A', 
     link: function(scope, element, attrs, controller) { 
      console.log('yahan');    
      element.addClass("vertical");    
     } 
    } 
}); 

에서 로그를 이동 restrict: 'EA'을 수행 할 수 있으며 두 가지 방법 (속성 또는 요소 이름)을 사용할 수 있습니다.

0

나는 동일한 문제에 직면 해있다. 마지막으로 ng-app 용 DI 모듈로 "orientable"을로드해야한다는 것을 알아야합니다. 이 "orientable"을 추가해야합니다.