createApp() アプリインスタンスの作成

最終更新:2026-10-22

createApp() アプリインスタンスの作成

createApp() はルートコンポーネントからアプリインスタンスを作成します。返される app オブジェクトは、コンポーネント登録、プラグインインストール、マウントなどのアプリケーションレベルの機能を提供します。

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

📝 構文

const app = createApp(App)
app.use(router)
app.mount("#app")

⚙️ 引数

rootComponent, rootProps?ルートコンポーネントの定義(オブジェクトまたはコンポーネント)。ルート props も渡せます

戻り値:アプリインスタンス:mount / component / use / provide / config などのメソッド

▶ 例

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

出力:

Shows 'app running'.

💡 ポイント

💡 ヒント アプリインスタンスとルートコンポーネントインスタンスは別物です。app はグローバル機能を担い、this はルートコンポーネントインスタンスを指します。
ℹ️ 補足 1 つのページに複数のアプリを作成できます(マイクロフロントエンド/段階的拡張のシナリオ)。それらは互いに分離されています。
⚠️ 注意 createApp の後の設定は mount の前に書く必要があります。マウント後に登録したコンポーネントは反映されません。
関連ケースは近日公開予定。

📚 関連チュートリアル

❓ よくある質問

Q new Vue() との違いは何ですか?
A Vue 3 はファクトリ関数でアプリインスタンスを作成します。設定が互いに分離され、グローバル汚染を避けられます。
Q 複数のルートコンポーネントをマウントできますか?
A 1 つの app に対応するルートコンポーネントは 1 つです。複数のルートが必要なら複数の app を作成してください(または 1 つのルートの下に複数コンポーネントを置きます)。
Q mount しないとどうなりますか?
A 何もレンダリングされません。コンポーネント定義は準備されるだけで、ページには接続されません。
Web-Tutorial.com

Web-Tutorial 技術チーム

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

100%