42
21

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【React】ReactアプリにTailwind Cssを導入する手順

Last updated at Posted at 2022-06-25

目的・前提

CSSフレームワークの一つであるTailwind CSSを、Reactアプリに導入するための手順を記載します。

M1 Macで行うことを前提としています。
※本記事は2022年6月25日時点に執筆。

手順

1. ターミナルを起動し、以下コマンドでReactアプリを作成する

※すでにReactアプリを作成済みの方は飛ばして「2.」から始めて大丈夫です。

npx create-react-app sample-react-tailwind

2. ターミナルにて、Reactアプリのホームディレクトリに移動する

cd sample-react-tailwind

3. 以下コマンドを実行し、Tailswind CSSを使う上で必要なライブラリをインストールする。

npm install -D tailwindcss postcss autoprefixer

4. 以下コマンドを実行し、tailwind.config.js と postcss.config.jsを作成する。

npx tailwindcss init -p

Screen Shot 2022-06-25 at 16.25.58.png

5. tailwind.config.jsの「content」を以下のように修正し、Tailwind CSSを反映させたいファイルを指定する。

/** @type {import('tailwindcss').Config} */
module.exports = {
  content: [
    "./src/**/*.{js,jsx,ts,tsx}",
  ],
  theme: {
    extend: {},
  },
  plugins: [],
}

6. 画面に読み込んでいるCSSファイルに、以下の記述を追記する。

./src/index.css

@tailwind base;
@tailwind components;
@tailwind utilities;

Screen Shot 2022-06-25 at 15.04.34.png

7. 以下コマンドでReactアプリを起動

npm run start

デフォルトのブラウザで以下画面が表示されるはず。
image.png

8. Tailwind CSSが用意しているクラス名を、各タグのclassName属性に指定する

まずは、Tailwind CSSを反映させたいファイル(今回はApp.js)を以下のように書き換える。

./src/App.js

import logo from './logo.svg';
import './App.css';

function App() {
  return (
    <div>
      <h1>
        Hello Tailwind CSS!
      </h1>
      <p>Tailwind CSSです</p>
      <button>ボタン</button>
    </div>
  );
}

export default App;

「6.」で表示された画面が以下のように変わります。
Screen Shot 2022-06-25 at 15.49.59.png
Screen Shot 2022-06-25 at 15.49.59

同ファイルにて、各タグのclassName属性にTailswind CSSがあらかじめ用意しているクラス名を指定します。

import logo from './logo.svg';
import './App.css';

function App() {
  return (
    <div className="border border-gray-400 rounded-2xl p-2 m-2 flex justify-around items-center">
      <h1 className="text-3xl font-bold underline">
        Hello Tailwind CSS!
      </h1>
      <p className="m-0 text-gray-400">Tailwind CSSです</p>
      <button className="bg-gray-300 border-0 p-2 rounded-md hover:bg-gray-400 hover:text-white">ボタン</button>
    </div>
  );
}

export default App;

Tailwind CSSが反映され、画面は以下のようになると思います。
Screen Shot 2022-06-25 at 15.56.45.png

以上がTailwind CSSを導入するまでの手順となります。

まとめ(というか感想)

初期設定が少し手間ですが、1から自分でデザインするよりは楽だと思うので、Tailwind CSS活用していきたいなぁと思っています。

現在勉強中の書籍「モダンJavaScriptの基本から始めるReact実践の教科書」に記載されているTailwind CSSの導入方法だと、エラーが発生して上手くいかなかったため、やり方を調べたのが本記事作成の背景。
2021年10月ごろに発売した書籍なのに、たった半年で書籍通りで動かなくなるとは。。

この本だとCRACOというツールをインストールしているのですが、CRACOの設定を記述してもエラーになってしまう。どうやら、現在ではCRACOを使わなくてもReactアプリでTailwind CSSを使えるようになっているらしいです。

色々ググった結果、結局はTailswind CSSの公式サイトに行き着いて、無事Tailswind使えるようになりました。やはり公式は避けては通れないですね。。

参考文献

【公式】Install Tailwind CSS with Create React App
TypeError: match.loader.options.plugins is not a function
モダンJavaScriptの基本から始めるReact実践の教科書

42
21
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
42
21

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?