Reactの環境をViteを使って作成する

Viteを使ってReactの環境を作成する流れをメモ。

設定方法

プロジェクトを作成するディレクトリに移動して、下記コマンドを実行します。

npm create vite@latest

プロジェクト名(作成するフォルダ名)を入力します。

? Project name:

使用するライブラリの一覧でReactを選択します。

? Select a framework: » - Use arrow-keys. Return to submit.
>   Vanilla
    Vue
    React
    Preact
    Lit
    Svelte
    Solid
    Qwik
    Others

TypeScriptかJavaScriptを選択します。

? Select a variant: » - Use arrow-keys. Return to submit.
>   TypeScript
    TypeScript + SWC
    JavaScript
    JavaScript + SWC
    Remix

これでプロジェクト作成が完了したので、プロジェクトのディレクトリに移動してインストールを行います。

npm install

これで環境の準備ができました。
下記コマンドで開発サーバを起動できます。

npm run dev

ディレクトリ構成

ディレクトリ構成は以下のようになっています。

  • public
    • vite.svg
  • src
    • assets
      • react.svg
    • App.css
    • App.jsx
    • index.css
    • main.jsx
  • .eslintrc.cjs
  • .gitignore
  • index.html
  • package.json
  • package-lock.json
  • README.md
  • vite.config.js

エンドポイントのindex.htmlは以下のようになっています。

<!doctype html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <link rel="icon" type="image/svg+xml" href="/vite.svg" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Vite + React</title>
  </head>
  <body>
    <div id="root"></div>
    <script type="module" src="/src/main.jsx"></script>
  </body>
</html>

index.htmlで読み込まれているsrc/main.jsxの中身は以下になります。

import React from 'react'
import ReactDOM from 'react-dom/client'
import App from './App.jsx'
import './index.css'

ReactDOM.createRoot(document.getElementById('root')).render(
  <React.StrictMode>
    <App />
  </React.StrictMode>,
)

src/App.jsxの中身は以下になります。

import { useState } from 'react'
import reactLogo from './assets/react.svg'
import viteLogo from '/vite.svg'
import './App.css'

function App() {
  const [count, setCount] = useState(0)

  return (
    <>
      <div>
        <a href="https://vitejs.dev" target="_blank">
          <img src={viteLogo} className="logo" alt="Vite logo" />
        </a>
        <a href="https://react.dev" target="_blank">
          <img src={reactLogo} className="logo react" alt="React logo" />
        </a>
      </div>
      <h1>Vite + React</h1>
      <div className="card">
        <button onClick={() => setCount((count) => count + 1)}>
          count is {count}
        </button>
        <p>
          Edit <code>src/App.jsx</code> and save to test HMR
        </p>
      </div>
      <p className="read-the-docs">
        Click on the Vite and React logos to learn more
      </p>
    </>
  )
}

export default App

ビルド

ビルドは下記コマンドを実行します。

npm run build

distフォルダが作成され、その中にファイルが出力されます。
Vite + Reactのデモページ

このエントリーをはてなブックマークに追加

関連記事

コメントを残す

メールアドレスが公開されることはありません。
* が付いている欄は必須項目です

CAPTCHA


コメントが承認されるまで時間がかかります。

2024年4月
 123456
78910111213
14151617181920
21222324252627
282930