Lightning Webコンポーネント、Lightning-datatable / Lightning-tree-gridDOMトラバーサル[複製]

Nov 30 2020

APIを使用してthis.template.querySelector("lightning-tree-grid")、を取得できましたが、内部要素にアクセスすると、空のプロキシオブジェクトが返されます。ブラウザコンソールを使用して、必要なものを見つけることができます。

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

しかし、コードでそれに到達することはできません。出来ますか?

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

回答

1 PhilW Nov 30 2020 at 16:18

ロッカーサービスのため、これを行うことはできません:

コンポーネントは、同じ名前空間内のコンポーネントによって作成されたDOMとアクセス要素のみをトラバースできます。この動作により、別の名前空間のコンポーネントが所有するDOM要素に到達するアンチパターンが防止されます。

すべての標準のLightningコンポーネントは、名前空間の外にあります。