Zennに掲載されたuhyo氏の記事では、React 19.3で追加された「Fragment Refs」機能を使い、公式サポート外の方法でActivityコンポーネント(React 19.2で導入、内部要素にdisplay: noneを与えて非表示にする)に似た挙動を自作するテクニックが紹介されています。Fragment Refsにより、通常はrefに対応していないFragmentコンポーネントがrefをサポートするようになり、得られるFragmentInstanceオブジェクトは複数のメソッドを備えています。

記事ではHiddenという名前のコンポーネントを実装し、本来IntersectionObserverやResizeObserver向けに用意されたobserveUsingメソッドを、独自の疑似Observerオブジェクトを渡すことでFragment内の子DOM要素全てへのアクセスに転用しています。取得した子DOM要素にhidden属性を付与することで非表示を実現するというアイデアです。

著者自身、この手法は公式にサポートされたものではなく、将来の動作が保証されないと述べています。

出典が伝えている要点

  • 記事はuhyo氏によりZennに掲載され、公開日は2026年9月14日である
  • Fragment RefsはReact 19.3で追加された機能である
  • Fragment Refsにより、通常はrefに対応していないFragmentコンポーネントがrefをサポートするようになった
  • Fragment refで得られるのはFragmentInstanceオブジェクトであり、複数のメソッドを備えている
  • Activityコンポーネントは自分では何も描画せず内部の要素にdisplay: noneを与える挙動を持つ
  • Activityコンポーネントはこの記事とは別に、React 19.2で導入された
  • 記事ではHiddenという名前のコンポーネントを実装し、Activityに似た非表示挙動をユーザーランドで実現している
  • Hiddenコンポーネントの実装はFragmentInstanceのobserveUsingメソッドを利用している
  • observeUsingメソッドは本来IntersectionObserverまたはResizeObserverを想定した機能である
  • 記事の実装では独自の疑似ObserverオブジェクトをobserveUsingに渡すことで、Fragment内の子のDOM要素全てにアクセスしている
  • 取得した子DOM要素にhidden属性を付与することで非表示を実現している
  • 著者はこの手法について、公式にサポートされたものではなく将来動作が保証されないと述べている
← 2026.09.15 の号を通しで読む