2016-10-26 2 views
1

출력 바인딩이 제공되는지 확인하는 방법은 무엇입니까?출력 바인딩이 제공되는지 확인하는 방법은 무엇입니까?

Examplecode :

angular.module('tester', []); 
angular.module('tester').component('test', { 
    template: '<h3></h3>', 
    bindings: { 
     callback : '&' 
    }, 
    controller: function() { 
     // How to check if callback binding is given? 
     // typeof this.callback === 'function' returns true 
     // angular.isFunction(this.callback) also returns true 
    } 
}); 

답변

0

당신이 바인딩이 바로 부여되어 있는지 확인하려면이 수행 바인딩 인 경우

if(this.callback) 
     return true 
    else 
     return false 

this.callback의 값은 구성 요소에 사용할 수있다 그렇지 않으면 그럴 수 없다.

+0

바인딩은 항상 함수이기 때문에 작동하지 않습니다. – tiktak

0

바인딩을 선택 사항으로 변경하면 제공되지 않으면 정의되지 않으며 이미 언급 한 방법을 사용하여 바인딩이 제공되었는지 확인할 수 있습니다.

bindings: { 
    callback : '&?' 
}, 
관련 문제