ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|
方法1: CDN で 1 行インストール
最も手軽な方法。HTML ファイル 1 つで動きます。学習や検証、既存ページへの部分導入に向いています。
Vue 3 Hello
{{ message }}
本番では vue.global.prod.js を使い、サイズを小さく:
方法2: create-vue (推奨)
公式の Vite ベース足場ツール。Node.js 18+ が必要です。
# Node.js 18+ を用意 (推奨は 20 LTS)
node -v # v20.x 以上
# プロジェクト作成 (対話形式)
npm create vue@latest
# 質問内容 (例)
# ✔ Project name: … my-vue-app
# ✔ Add TypeScript? … No / Yes
# ✔ Add JSX Support? … No / Yes
# ✔ Add Vue Router for Single Page Application development? … No / Yes
# ✔ Add Pinia for state management? … No / Yes
# ✔ Add Vitest for Unit Testing? … No / Yes
# ✔ Add an End-to-End Testing Solution? … No / Cypress / Playwright
# ✔ Add ESLint for code quality? … No / Yes
# ✔ Add Prettier for code formatting? … No / Yes
cd my-vue-app
npm install
npm run dev
# ➜ Local: http://localhost:5173/
方法3: 既存プロジェクトに npm で追加
# Vue 本体だけ追加
npm install vue@3
# よく入れる関連
npm install vue-router@4 # ルーティング
npm install pinia # 状態管理 (Vuex 後継)
npm install @vitejs/plugin-vue --save-dev # Vite で .vue を扱う
npm install -D vite # ビルドツール
# package.json の起動スクリプト
# "scripts": {
# "dev": "vite",
# "build": "vite build",
# "preview": "vite preview"
# }
方法4: Vue CLI (レガシー、非推奨)
Webpack ベースの旧足場。新規プロジェクトでは create-vue (Vite) を使ってください。
# 旧 CLI (Webpack)
npm install -g @vue/cli
vue create my-app
cd my-app
npm run serve
# 公式は 2023 以降 maintenance mode
# 新規は create-vue 推奨
create-vue で作られる構成
my-vue-app/
├── index.html
├── package.json
├── vite.config.js
├── public/
│ └── favicon.ico
└── src/
├── main.js # ← createApp(App).mount('#app')
├── App.vue # ← ルートコンポーネント
├── components/
│ └── HelloWorld.vue
├── router/ # vue-router 選択時
│ └── index.js
└── stores/ # pinia 選択時
└── counter.js
最初のコンポーネント (Single File Component)
Hello Vue 3
count: {{ count }} / doubled: {{ doubled }}
Composition API vs Options API
| 項目 | Composition API (推奨) | Options API |
|---|---|---|
| 記法 | + ref / computed | data() {} / methods: {} |
| ロジック再利用 | composable 関数 (useFoo()) | mixin (非推奨) |
| TypeScript | 型推論が効きやすい | 型注釈が冗長 |
| 学習曲線 | やや高 | 低 (直感的) |
| 推奨 | Vue 3 の標準 | 既存プロジェクト互換 |
開発サーバ / ビルドコマンド
# 開発サーバ (HMR 付き、http://localhost:5173)
npm run dev
# 本番ビルド (dist/ に出力)
npm run build
# ビルド結果のローカルプレビュー
npm run preview
# 型チェック (TS 利用時)
npm run type-check
# テスト (Vitest 選択時)
npm run test:unit
FAQ
Q: Vue 2 と Vue 3、どちらを学ぶべき?
A: 新規は Vue 3。Vue 2 は 2023/12/31 で EOL。既存 Vue 2 プロジェクトは vue-demi や Vue 2.7 を経て段階的に移行。
Q: TypeScript は必須?
A: 必須ではないが推奨。create-vue で「Add TypeScript? Yes」を選ぶだけで設定済。
Q: Nuxt.js とは?
A: Vue の SSR / SSG フルスタックフレームワーク。Next.js (React) に相当。npx nuxi@latest init my-app で開始。
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
子ページ
子ページはありません
同階層のページ
- インストール(ファイルのダウンロード)
- npmを使用したプロジェクトの作成(mac)
- for 繰り返し処理
- ifの条件分岐とtemplateを用いたグループ化
- on:click クリック時のイベント処理
- modelとdata フォーム入力値とDOMへの即時反映
- computed(算出プロパティ)と使い方とdataとの違い
- ライフサイクルフック(created / mounted / updated / destroyedの使い方)
- $nextTickの使い方(ライフサイクルフック)
- メソッドの定義方法
- エラー一覧
- ルーティング設定
- aリンクの貼り方と動的URLの作成
- Mixinを利用した共通処理の記述方法
- v-bindによるデータ連携
- ヘッダー/フッターの共通コンポーネント
- ナビゲーションの現在ページをハイライトする方法
- 画面サイズの取得方法
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript base URL 取得方法|window.location.origin と SSR/Node.js 対応
- 4 YouTube Data API v3 エラー一覧|403/400/404 の主要原因と切り分け
- 5 Spring Frameworkのアノテーション一覧
- 6 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 7 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- Laravel キャッシュクリア完全ガイド(cache:clear / config:clear / 2026-05-18 07:42:07
- プロジェクトの作成と削除 2026-05-18 07:42:07
- インストール直後にNetbeansが反応しない 2026-05-18 07:42:07
- 動画やチャンネルの検索 2026-05-18 07:42:07
- APIキー取得方法 2026-05-18 07:42:07
- チャンネル情報の取得 2026-05-18 07:42:07
- API 入門 — Web API(REST / GraphQL / gRPC / 2026-05-18 07:42:07
- インストール(eclipseプラグイン) 2026-05-18 07:42:07
- Laravel「Dotenv values containing spaces must be surrounded 2026-05-18 07:42:07
- エラー一覧 2026-05-18 07:42:07
- curl: (51) SSL: certificate subject name '~' does not match 2026-05-18 07:42:07
- インストール方法(Windows版) 2026-05-18 07:42:07
- JSONから配列に変換 2026-05-18 07:42:07
- 処理を一定時間待つ 2026-05-18 07:42:07
- A non well formed numeric value encountered 2026-05-18 07:42:07
コメントを削除してもよろしいでしょうか?