Redux ToolkitとTailwind CSSを使用したプロジェクトの作成


npx create-react-app my-app
cd my-app
npm install @reduxjs/toolkit
npm install tailwindcss

プロジェクトが作成されたら、Redux Toolkitのセットアップを行います。まず、Redux Storeを作成するために必要なファイルを作成します。以下のコマンドを実行して、Redux Toolkitのテンプレートを生成します:

mkdir src/redux
touch src/redux/store.js

store.jsファイルを開き、次のコードを追加します:

import { configureStore } from '@reduxjs/toolkit';
const store = configureStore({
  reducer: {
    // ここにReducerを追加
  },
});
export default store;

次に、ReduxのReducerを作成します。例として、counterというReducerを作成してみましょう。src/reduxディレクトリにcounter.jsというファイルを作成し、以下のコードを追加します:

import { createSlice } from '@reduxjs/toolkit';
const counterSlice = createSlice({
  name: 'counter',
  initialState: 0,
  reducers: {
    increment(state) {
      return state + 1;
    },
    decrement(state) {
      return state - 1;
    },
  },
});
export const { increment, decrement } = counterSlice.actions;
export default counterSlice.reducer;

これでReduxのセットアップが完了しました。次に、Tailwind CSSをプロジェクトに統合しましょう。src/index.cssファイルを開き、以下のコードを追加します:

@import 'tailwindcss/base';
@import 'tailwindcss/components';
@import 'tailwindcss/utilities';

これでTailwind CSSが有効になりました。

最後に、Redux ToolkitとTailwind CSSを組み合わせて使用するコンポーネントの例を示します。例として、カウンターコンポーネントを作成してみましょう。src/components/Counter.jsというファイルを作成し、以下のコードを追加します:

import React from 'react';
import { useSelector, useDispatch } from 'react-redux';
import { increment, decrement } from '../redux/counter';
const Counter = () => {
  const count = useSelector(state => state.counter);
  const dispatch = useDispatch();
  return (
    <div>
      <button onClick={() => dispatch(increment())}>+</button>
      <span>{count}</span>
      <button onClick={() => dispatch(decrement())}>-</button>
    </div>
  );
};
export default Counter;

これでRedux ToolkitとTailwind CSSを使用したプロジェクトのセットアップが完了しました。これらの手順に従うことで、Redux ToolkitとTailwind CSSを組み合わせてフロントエンド開発を行うことができます。以上が、Redux ToolkitとTailwind CSSを使用したプロジェクトの作成方法についての解説です。