Lightning-Webkomponenten, Lightning-datierbare / Lightning-Tree-Grid-DOM-Durchquerung [Duplikat]

Nov 30 2020

Mit der API habe ich es geschafft this.template.querySelector("lightning-tree-grid"), aber wenn ich zu einem inneren Element komme , wird ein leeres Proxy-Objekt zurückgegeben. Mit der Browserkonsole finde ich Folgendes:

this.template.querySelector("lightning-tree-grid").shadowRoot.querySelector("lightning-datatable").shadowRoot.querySelector("[aria-level='2']")

Aber nicht in der Lage, es im Code zu erreichen. Ist es möglich?

https://developer.salesforce.com/docs/component-library/bundle/lightning-datatable/documentation https://developer.salesforce.com/docs/component-library/bundle/lightning-tree-grid/documentation

Antworten

1 PhilW Nov 30 2020 at 16:18

Sie können dies aufgrund des Schließfachdienstes nicht tun :

Eine Komponente kann nur das DOM durchlaufen und auf Elemente zugreifen, die von einer Komponente im selben Namespace erstellt wurden. Dieses Verhalten verhindert, dass das Anti-Pattern auf DOM-Elemente zugreift, die Komponenten in einem anderen Namespace gehören.

Alle Standard-Blitzkomponenten befinden sich außerhalb Ihres Namespace.