Vaadin-combo-box: Regression: Aufruf von render() vor den ersten offenen Würfen

Erstellt am 11. März 2019  ·  5Kommentare  ·  Quelle: vaadin/vaadin-combo-box

Beschreibung

Der Aufruf von combobox.render() wirft, falls die Combobox noch nicht geöffnet war:

Cannot read property 'querySelectorAll' of undefined

Dies ist die Zeile, in der passiert:
https://github.com/vaadin/vaadin-combo-box/blob/41f870912bdd872e3376b090e863641928568a24/src/vaadin-combo-box-mixin.html#L276

Erwartetes Ergebnis

Das Aufrufen von combobox.render() wirft nicht

Tatsächliches Ergebnis

Fehler wird geworfen

Schritte zum Reproduzieren

  1. Fügen Sie ein vaadin-combo-box Element in die Seite ein.
  2. Renderer zuweisen, Kombinationsfeld nicht öffnen
  3. combobox.render()
bug good first issue

Hilfreichster Kommentar

Die tatsächlichen Elemente würden nicht noch gerendert, bevor das Dropdown-Menü geöffnet wird, sodass keine Renderer aufgerufen werden. Aus dieser Sicht wäre es sinnvoll, nichts zu tun, es sei denn, _selector ist da.

Alle 5 Kommentare

Hinweis: Dies wurde für die Version dom-if gemeldet, sollte aber nach der Änderung von disable-upgrade noch gültig sein, da _selector nicht definiert wird, bis die Combo-Box zum ersten Mal geöffnet wird.

Persönlich besprochen, dass render() tatsächlich _initDropdown aufrufen könnte, wenn es vor dem ersten Öffnen der Combobox aufgerufen würde, so dass es das tatsächliche Rendering auslösen würde, wie es die Benutzer erwarten könnten.

Die tatsächlichen Elemente würden nicht noch gerendert, bevor das Dropdown-Menü geöffnet wird, sodass keine Renderer aufgerufen werden. Aus dieser Sicht wäre es sinnvoll, nichts zu tun, es sei denn, _selector ist da.

Nachdem #782 zusammengeführt wurde und Build grün ist, werde ich diesen Fix auf den neuesten Master umbasieren, damit dieser auch bestanden wird.

Dieser Fix ist jetzt in v4.2.6 enthalten

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen