AngularJS zeigt eine Nachricht an, wenn das Objekt im Repeater leer ist

8

Ich verwende AngularJS und den Repeater, um einige Ergebnisse zu durchlaufen. Es gibt auch einen Filter für die Suche.

Es gibt zwei Bedingungen, mit denen ich umgehen möchte und nach dem "eckigsten" Weg suche.

Die erste Bedingung ist, wenn es zu Beginn keine Ergebnisse gibt.

Die zweite Bedingung ist, wenn bei der Verwendung des Filters keine Ergebnisse zurückgegeben werden.

Ich sah dies , welches scheint, als wäre es angemessen und ich könnte eine für jede Bedingung erstellen. Gibt es aber trotzdem native Winkelanweisungen um diese Bedingungen zu verarbeiten, ohne Code im Controller zu benötigen?

Danke!

    
dzm 14.04.2013, 01:09
quelle

3 Antworten

12

Sie können die ngSwitch-Direktive für das gefilterte Array hinzufügen und abhängig von der Länge unterschiedliche HTML-Werte anzeigen.

jsFiddle .

HTML:

%Vor%

JS:

%Vor%

Eine weitere Option ist die Anwendung von $ filter ("filter") auf das friends-Array direkt im Controller, wodurch das HTML-Markup verkürzt wird.

    
Klaster_1 14.04.2013, 03:35
quelle
6

Sie können diese Syntax verwenden, um eine Nachricht anzuzeigen, wenn keine Daten gefunden wurden

%Vor%

Wo Freunde das JSON-Objekt ist.

    
Rajnish Bakaria 10.04.2014 07:56
quelle
1

ngRepeat ermöglicht es Ihnen, den resultierenden Elementen einen Alias ​​zu geben, nachdem alle Filter verarbeitet wurden. Sie können diesen Alias ​​dann verwenden, um Ihre Nachricht anzuzeigen.

%Vor%     
Julien 15.01.2015 14:59
quelle

Tags und Links