2014-10-29 24 views
9

Pracuję nad jedną małą aplikacją angularjs. Mam przycisk, w którym używam 2 zdarzeń, ng-click i onlick. Działa to dobrze i nie ma problemów, ale chcę mieć pewność, że w 100% robię to dobrze i czy moje podejście jest właściwe? Czy dozwolone jest posiadanie ich razem przy zdarzeniach stanu przycisku?Czy mogę używać ng-click i onclick razem

+0

Z ciekawości, dlaczego musisz to zrobić? –

Odpowiedz

11

Możesz powiązać dowolną liczbę zdarzeń, jak chcesz, z przyciskiem itp. Jest to jednak zbędne. Zobacz ten jsFiddle: Bind events

JS:

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

function MyCtrl($scope) { 
    $scope.ngFn = function() { 
     console.log("ngFn is triggered!"); 
    }; 
} 

function nativeFn() { 
    console.log("nativeFn is triggered!"); 
}; 

$(document).ready(function() { 
    $('#forJq').bind('click', function() { 
     console.log("Anonymous function bind by jq is triggered!"); 
    }); 
}); 

HTML:

<div ng-controller="MyCtrl"> 
    <button id="forJq" onclick="nativeFn()" ng-click="ngFn()">Try me!</button> 
</div> 
0

Dla pojedynczej BTN, to jest ok, aby korzystać ng-click lub onclick w ng-app. Nie ma różnicy między tymi dwiema funkcjami. Aby efektywnie pracować w zespole, lepiej mieć ze sobą konto. W aplikacjach Angular zalecany jest ng-click.

+0

możesz spróbować, ale nie musisz brać ich razem – Niukun