it-swarm.com.de

Was ist der Unterschied zwischen ng-click und data-ng-click in anglejs?

Aus 1. Sicht scheint wie data-ng-click kann einige Daten als Argument an die Methode übergeben, die beim Drücken der Taste aufgerufen werden soll.

Aber ich sehe keinen Unterschied.

Ich habe Codeausschnitte verfolgt:

HTML

<input 
    type="button" 
    value="Fess"
    ng-click="toggle(2)">

OR

<input 
    type="button" 
    value="Fess"
    data-ng-click="toggle(2)">

JS

$scope.toggle = function (valueS) {
    alert(valueS);        
}

Beide arbeiten.

Vielen Dank,

37
Maxim Shoustin

Sie sind das gleiche. Sie können data-ng-click, um ein gültiges HTML zu erstellen.

34
NARKOZ

Aus dem Angular Docs auf Direktiven :

Direktiven haben Namen in Kamelgehäusen wie ngBind. Die Direktive kann aufgerufen werden, indem der Name des Kamelkastens in einen Schlangenfall mit den folgenden Sonderzeichen übersetzt wird:, - oder _. Optional kann der Direktive x- oder data- vorangestellt werden, um die HTML-Validierungskonformität zu gewährleisten. Hier ist eine Liste einiger der möglichen Anweisungsnamen: ng: bind, ng-bind, ng_bind, x-ng-bind und data-ng-bind.

Aus praktischen Gründen ist es völlig in Ordnung, sie wegzulassen. Es ist nur so, dass, wenn Sie es über einen HTML-Validierungsdienst ausführen, es nicht als konform übergeben wird.

13
Jonah

HTML5 kann benutzerdefinierte Datenattribute in alle HTML-Elemente einbetten

Diese neuen benutzerdefinierten Datenattribute bestehen aus zwei Teilen:

Attributname Der Datenattributname muss mindestens ein Zeichen lang sein und mit dem Präfix 'data-' versehen sein. Es sollte keine Großbuchstaben enthalten.

Attributwert Der Attributwert kann eine beliebige Zeichenfolge sein.

<li data-spacing="30cm" data-sowing-time="February to March">Celery</li>

quelle: http://html5doctor.com/html5-custom-data-attributes/

3
Harsha

Beim Verwenden mit und ohne Formular wurde ein Unterschied festgestellt.

Wenn sich mein Element in einer Form befindet, verhalten sie sich genauso.

Wenn ich data-ng-click Für ein Element verwende, das sich nicht in einem Formular befindet, tritt kein Click-Ereignis auf.

1
Nithyanandam G