ShadowDOM を使用せずに WebComponent を構築しようとしています。これまでのところ基本的には動作していますが、今度は Angular の @ViewChild
/ を使用するなど、他のコンポーネントをラップするコンポーネントを構築したいと考えています。 @ViewChildren
同じです。 (ここでレンダリングに使用するライブラリは、lit-html に似た uhtl です)
今このコンポーネントを使用する場合
リーリー楽しみにしています
リーリーしかし、スロット部分は機能しません。
ShadowDOM に切り替えると機能しますが、今は ShadowDOM のサンドボックス化に対処しなければならないので、それはしたくありません。
リーリー リーリーShadowDOM なしでスロットを動作させることは可能ですか? そうでない場合、コンポーネント内で定義されているものを取得し、それを表示内で使用する別の方法はありますか?
リーリーは
として表示される必要があります リーリー ###助言がありますか?P粉6966058332024-03-29 12:12:36
いいえ、<slot>
は ShadowDOM API の一部です
偽装することはできますが、shadowDOM がないため、そのコンテンツを別の場所に保存する必要があります。
おそらく、(軽い) DOM コンテンツを読み取って解析する <template>
です。
これは一連の DOM 突然変異です。
ShadowDOM スタイルの使用方法を学ぶ方が簡単かもしれません: