← 機能一覧に戻る
Pro

コンポーネントディテクター

コンポーネントディテクターは、ウェブサイトが使用しているフロントエンドフレームワークを自動的に識別し、完全なコンポーネントツリーを表示します。React、Vue、Angular、Svelte のコンポーネント名、props/state の値、ネスト階層を、単一の検査パネルから確認できます。

あるウェブサイトがどのフレームワークで構築されているか気になったことはありませんか?あるいは、複雑な UI がどのようにコンポーネントに分解されているかを知りたいと思ったことは?コンポーネントディテクターはその両方の疑問に即座に答えます。ページをスキャンしてフレームワーク固有のシグネチャ(React の fiber ノード、Vue のコンポーネントインスタンス、Angular の zone マーカー、Svelte のコンポーネントメタデータ)を検出し、フレームワーク、バージョン、完全なコンポーネントツリーを特定します。React と Vue については、さらに踏み込んでコンポーネントの props と state の値を表示し、UI の各部分を動かすデータを把握できます。ツリー内のコンポーネントをクリックするとページ上の対応する DOM 要素がハイライトされ、逆にページ上の要素をクリックするとツリー内のコンポーネントを特定できます。軽量なフローティングパネルとして組み込まれた、React DevTools や Vue DevTools のような存在です。

ライブプレビュー
example.com/app
Detected page components
<App>
<Navbar>
<Dashboard>
<StatsCard>
<StatsCard>
Component Detector
R
React
v18.2.0 detected
▼ App
▼ Navbar
Logo
NavLinks
▼ Dashboard ● selected
StatsCard ×2
ChartWidget
RecentActivity
Props
title"Overview"
loadingfalse
columns2
主な機能

フレームワークの自動検出

React(Next.js、Gatsby、Remix を含む)、Vue(Nuxt を含む)、Angular、Svelte(SvelteKit を含む)、Preact、Solid、その他のフレームワークを自動的に検出します。フレームワーク名、正確なバージョン番号、レンダリングモード(クライアントサイド、SSR、またはハイブリッド)を表示します。

完全なコンポーネントツリー

折りたたみ可能なツリービューでコンポーネント階層全体を表示します。最上位の App コンポーネントが Navbar を含み、その Navbar が NavLinks を含み、さらに個々の Link コンポーネントが含まれる — といった構造が明確に把握できます。ネスト深度と親子関係が一目瞭然です。

props と state の検査

React と Vue のコンポーネントについて、各コンポーネントに渡される現在の props と state の値を確認できます。Dashboard コンポーネントが title="Overview"、loading=false、columns=2 を受け取っていることなどが確認でき、データフローの理解に非常に役立ちます。

双方向要素リンク

ツリーパネルのコンポーネントをクリックすると、ページ上の対応する DOM 要素がカラーオーバーレイでハイライトされます。逆に、ページ上の要素をクリックすると、ツリー内の親コンポーネントが検索・選択されます。どちらの方向からでも自然にナビゲートできます。

コンポーネント数と統計情報

ページ上に描画されたコンポーネントの総数、ユニークなコンポーネントと繰り返し使われているインスタンスの数、最も頻繁に使用されているコンポーネントを確認できます。ページの複雑さの把握や再利用パターンの特定に役立ちます。

本番サイトでも動作

ミニファイされた本番ビルドでもフレームワークを検出します。React の fiber ツリー、Vue の __vue__ マーカー、Angular の ng 属性は本番モードでも残存しており、コンポーネントディテクターはビルド設定に関係なくそれらを読み取ります。

主な活用例

ウェブサイトの技術スタックを特定する

任意のウェブサイトを訪問し、React、Vue、Angular、Svelte のどれで構築されているかを正確なバージョンとともに即座に確認できます。Site Stack と組み合わせると、CDN、アナリティクス、CMS 情報を含む完全なテクノロジー監査が実施できます。

コンポーネントアーキテクチャを理解する

本番アプリケーションが UI をどのようにコンポーネントに分解しているかを研究できます。Stripe の料金ページの構造、Linear のダッシュボードの整理方法、あるいは優れたアプリがレイアウト、ナビゲーション、コンテンツをどのようにコンポーネントに分離しているかを確認しましょう。

データフローの問題をデバッグする

コンポーネントが正しくレンダリングされない?props と state を検査して、実際に受け取っているデータを確認しましょう。console.log 文を使わずに、期待値と実際の値を比較してデータフローのどこで問題が発生しているかを特定できます。

インタビュー準備と学習

フロントエンドの面接準備をしていますか?本番サイトを閲覧して実際のコンポーネントパターンを確認しましょう。コンテナ/プレゼンテーショナルの分離、render prop の使い方、context プロバイダー、HOC ラッパーなど、すべてがコンポーネントツリーで確認できます。

フレームワークのアプローチを比較する

異なるフレームワークで構築された類似製品を訪問し、コンポーネント構造を比較しましょう。React アプリと Vue アプリが同じ UI パターン(ナビゲーション、フォーム、データテーブル、モーダル)にどのようにアプローチするかを確認し、アーキテクチャの違いを理解できます。

使い方
1

コンポーネントディテクターを有効化する

DevSuite Pro のフローティングドックを開き、コンポーネントディテクターのアイコンをクリックします。ツールはページ DOM をスキャンしてフレームワーク固有のマーカーを検出し、コンポーネントツリーを構築します。

2

フレームワーク情報を確認する

パネルのヘッダーに、検出されたフレームワーク(React、Vue、Angular、Svelte)、そのバージョン、レンダリングモードが表示されます。フレームワークが検出されない場合は、バニラ HTML/CSS/JS のページとして報告されます。

3

コンポーネントツリーを探索する

ツリー内のコンポーネントを展開・折りたたみながら階層を確認できます。コンポーネント名はインデントによってネスト深度が示されます。繰り返し使われているコンポーネントにはインスタンス数が表示されます。

4

props と state を検査する

ツリー内のコンポーネントをクリックすると、下部の詳細セクションに現在の props と state の値が表示されます。React の場合:props、state、hooks。Vue の場合:props、data、computed プロパティ。

5

クリックでページ上をハイライトする

コンポーネントをクリックすると、ページ上の対応する DOM 要素がカラーボーダーと半透明オーバーレイでハイライトされます。ページ上の要素をクリックすると、ツリー内でその要素を特定できます。

試してみませんか? コンポーネントディテクター?

DevSuite Pro を無料でインストールして、ブラウザで 39 以上の開発者ツールを利用しましょう。

Chrome に追加 Edgeに追加 Firefox に追加