app.component() コンポーネントのグローバル登録

最終更新:2026-10-22

app.component() コンポーネントのグローバル登録

app.component() はコンポーネントをグローバルに登録します。すべてのコンポーネントテンプレートで直接使えます。ボタンやアイコンなどのベースコンポーネントに向いています。

グループグローバル API
種類API
スコープグローバル
Vue バージョン3.0+
SSR 対応対応

📝 構文

app.component("my-btn", { template: "<button><slot></slot></button>" })

⚙️ 引数

name, component?コンポーネント名 + コンポーネント定義(名前だけ渡すと登録済みコンポーネントを返します)

戻り値:アプリインスタンス(メソッドチェーン可能)

▶ 例

以下のコードを編集して結果を確認しましょう:

出力:

Renders a button labelled 'Global button'.

💡 ポイント

⚠️ 注意 グローバル登録は tree-shaking で除去できません。大規模プロジェクトではローカル登録を優先してください。
💡 ヒント ベース UI(ボタン/アイコン/カード)だけに使い、業務コンポーネントは必ずローカル登録してください。
ℹ️ 補足 実際のプロジェクトでは通常、エントリーファイルでまとめて登録します。mount の前に行うことに注意してください。
関連ケースは近日公開予定。

📚 関連チュートリアル

❓ よくある質問

Q ローカル登録との使い分けは?
A 使う場所で登録する(ローカル)方が明確で、tree-shaking も効きます。ベースコンポーネントだけグローバルにします。
Q コンポーネント名に決まりはありますか?
A 複数単語の kebab-case(DOM テンプレート)または PascalCase(SFC)を使い、単語 1 つでネイティブタグと衝突するのを避けてください。
Q 同名のコンポーネントを登録するとどうなりますか?
A 後に登録したものが先の同名コンポーネントを上書きします(開発環境では警告が出ます)。
Web-Tutorial.com

Web-Tutorial 技術チーム

複数の開発者によって共同維持されているプログラミングチュートリアルプラットフォーム。各チュートリアルは専門分野の開発者が執筆・レビューしています。正確で信頼性の高いコンテンツを目指しています — 問題を見つけた場合はお知らせください。

100%