Wie erkennen wir, ob mit der API v0 oder v1 ein Schattenstamm erstellt wurde?
Angenommen, ein JS-Modul exportiertshadowRoot
welches mit entweder @ erstellt wurel.createShadowRoot
oderel.attachShadow
(wir wissen nicht welche). Wie erkennen wir, ob die Wurzel eine v0-Schattenwurzel oder eine v1-Schattenwurzel ist (d. H. Wie erkennen wir, welche Methode zum Erstellen der Wurzel verwendet wurde)?
f.e., Was würde ich in die folgenden bedingten Anweisungen eintragen?
// for argument's sake, we don't create the root, we only get a reference
// to it:
import shadowRoot from 'somewhere'
function getShadowRootVersion(root) {
if ( ... )
return 'v0'
if ( ... )
return 'v1'
}
console.log(getShadowRootVersion(shadowRoot)) // should output "v0" or "v1".
Mehr Info
Wir möchten herausfinden, ob aus @ ein Schattenstamm erstellt wurdcreateShadowRoot
oder vonattachShadow
. Die resultierenden Wurzeln sind unterschiedlich: in der mit @ erstellten WurzcreateShadowRoot
, <content>
-Elemente werden zum Verteilen von Elementen verwendet. In mit @ erstellten WurzeattachShadow
, <content>
Elemente tun nichts und<slot>
tattdessen werden @ -Elemente verwendet. Wie erkennen wir, welche Methode zum Erstellen einer Wurzel verwendet wurde (d. H. Ob wir eine Wurzel v0 oder eine Wurzel v1 haben)?