1203 Stimmen

Was ist der beste Weg, um bedingt eine Klasse anzuwenden?

Sagen wir, Sie haben ein Array, das in einem ul mit einem li für jedes Element und einer Eigenschaft auf dem Controller namens selectedIndex gerendert wird. Wie könnte man am besten eine Klasse zu dem li mit dem Index selectedIndex in AngularJS hinzufügen?

Derzeit dupliziere ich (manuell) den li-Code und füge die Klasse zu einem der li Tags hinzu und benutze ng-show und ng-hide, um nur ein li pro Index anzuzeigen.

2 Stimmen

Antworten auf diese Frage zeigen, dass das Templating mehr als {{varname}} umfasst. Wo finde ich Dokumentation darüber, was das Templating noch bietet, wie z.B. den ternären Operator in ein paar verschiedenen Formen? docs.angularjs.org/guide/templates scheint nicht zu erklären, was das Templating an Bedingungen usw. bietet, abgesehen von {{varname.fieldname}}.

0 Stimmen

Das ist für mich so nützlich, ich hoffe es funktioniert auch für dich tech-blog.maddyzone.com/javascript/…

9voto

Ravi Ram Punkte 23258

Ich bin neu in Angular, habe aber festgestellt, dass dies mein Problem löst:

Dies wendet bedingt eine Klasse basierend auf einer Variablen an. Es beginnt mit einem icon-download als Standard, dann überprüfe ich mit ng-class den Status von showDetails, ob true/false und wende die Klasse icon-upload an. Es funktioniert super.

Ich hoffe, es hilft.

9voto

Aliti Punkte 1865

Dies funktioniert wie ein Zauber ;)

    Rückgabe

    Einzelfahrt

5voto

sundar Punkte 71

Dies wird wahrscheinlich ins Nirgendwo heruntergevotet, aber so habe ich die ternären Operatoren von 1.1.5 verwendet, um Klassen je nachdem zu wechseln, ob eine Zeile in einer Tabelle die erste, mittlere oder letzte ist - außer wenn es nur eine Zeile in der Tabelle gibt:

5voto

H.jame Punkte 79

Dies ist in meiner Arbeit ein mehrfach bedingter Richter:

  {{eOption.eoSequence}}     |    
  2020

4voto

Caner Punkte 1530

Teilweise

      Diesen Monat
      Gesamtzeitraum

Controller

  $scope.campaign_range = "all";
  $scope.change_range = function(range) { 
        if (range === "all")
        {
            $scope.campaign_range = "all"
        }
        else
        {  
            $scope.campaign_range = "thismonth"
        }
  };

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X