web-dev-qa-db-ja.com

ng-clickとonclickを一緒に使用できますか

私は1つの小さなangularjsアプリに取り組んでいます。ボタンがあり、ng-clickとonlickの2つのイベントを使用しています。それは正しく機能し、問題はありませんが、100%確実にうまくやっていて、私のアプローチは正しいですか?ボタン状態のイベントでそれらを一緒にすることは許可されていますか?

10
user4005469

ボタンなどに必要な数のイベントをバインドできます。ただし、これは不要です。これを参照してください jsFiddle:バインドイベント

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>
11
Kursad Gulseven

単一のbtnの場合、ng-clickng-appまたはonclickを使用しても問題ありません。 2つの機能に違いはありません。効果的なチームワークのために、あなたはお互いにアカウントを持っている方が良いです。 Angularアプリでは、ng-clickをお勧めします。

0
Niukun