Wie können Validatoren in Vaadin 8 hinzugefügt werden?

8

In Vaadin 7 gab es eine addValidator-Funktion, aber in Vaadin 8 existiert sie nicht.

Vaadin 7 Beispiel:

%Vor%     
Diego D 27.02.2017, 17:18
quelle

3 Antworten

15

Ich habe die Antwort hier gefunden: Was ist neu

Beispiel:

%Vor%

    
Diego D 27.02.2017, 17:32
quelle
3

Die akzeptiert Antwort von Diego D sieht korrekt aus. Dieser Code scheint aus diesem sehr kurzen (3 Minuten) aber sehr hilfreichen Video zu stammen, das von der Firma Vaadin veröffentlicht wurde, Geben Sie eine sichere Validierung ein Vorher und Nachher Konverter . Zeigt den neuen Vaadin 8-Ansatz für die Validierung. Ich füge einige Notizen hinzu, zeige erweiterte Syntax und gebe vollständigen Beispielcode für eine voll funktionsfähige App.

Validator + Sammelmappe

Ein großer Unterschied in Vaadin 8 besteht darin, dass Validatoren die Verwendung von a erfordern Ordner . In den alten Tagen hast du einem Feld einen Validator angehängt, aber jetzt in Vaadin 8 befestigst du einen Validator nur an einen Ordner. Das Vaadin-Team erkennt an, dass sich diese Anforderung eines Binders für einige einfache Situationen als störend erweisen kann, aber in den meisten Fällen erwarten sie, dass Situationen, die eine Validierung erfordern, wahrscheinlich auch bindend sind. Ein sehr logisches Überdenken, glaube ich. In einem anderen Vaadin-Unternehmensvideo Webinar: Was gibt es Neues in Vaadin 8? . .

Validierung & amp; Konverter

Wir definieren zwei verschiedene Validatoren, einen, der aufgerufen wird, bevor ein Konverter den Dateneintrag des Benutzers konvertiert, und einen anderen, der nach der Konvertierung aufgerufen wird. Daher ist die Reihenfolge der Methodenaufrufe withValidator und withConverter im fließenden Stil der Schlüssel, um hier das Verhalten zu korrigieren. Natürlich sind beforeConversion und afterConversion schlechte Namen für Validator-Objekte, werden aber gemacht, um die Absicht zu verdeutlichen, vor oder nach dem Konverter in dieser Demo zu laufen.

Lambda synax optional

Ein Validator verwendet einen herkömmlichen Java-Code-Stil, der eine Methode überschreibt. Der andere Validator verwendet die Lambda-Syntax. Sehen Sie sich das Video an und sehen Sie sich die Diego D-Antwort für Code an, der mit einzeiligen Lambda-Argumenten weiter vereinfacht wird.

%Vor%     
Basil Bourque 24.03.2017 07:30
quelle
1
  

Was ist, wenn Sie kein Bindemittel haben, weil Sie ein dynamisches Formular erstellt haben?

Vaadin 8.1 unterstützt das Entfernen des Binders für ein Feld, das dynamische Formen unterstützt. Wenn Sie ein Feld unsichtbar machen, entfernen Sie den Ordner für dieses Feld. Fügen Sie den Ordner erneut hinzu, wenn Sie das Feld sichtbar machen.

    
Brett Sutton 07.03.2018 23:47
quelle

Tags und Links