Just-in-Time: Следующее поколение Tailwind CSS
Tailwind CSS на GitHubTailwind CSS в Telegram

Установите Tailwind CSS с Create React App

Настройка Tailwind CSS в проекте Create React App.

Создание вашего проекта

Начните с создания нового проекта Create React App, если у вас его еще нет. Самый распространенный подход - использовать Create React App:

npx create-react-app my-project
cd my-project

Настройка Tailwind CSS

Tailwind CSS требует Node.js 12.13.0 или выше.

Установка Tailwind через npm

Устанавливаем Tailwind его одноранговые зависимости, используя npm:

npm install -D tailwindcss@npm:@tailwindcss/postcss7-compat postcss@^7 autoprefixer@^9

Create React App не пока поддерживает PostCSS 8 поэтому вам необходимо установить сборку совместимости с Tailwind CSS v2.0 PostCSS 7, как мы показали выше.

Установить и настроить CRACO

Поскольку Create React App не позволяет вам изначально переопределить конфигурацию PostCSS, нам также необходимо установить CRACO, чтобы иметь возможность настраивать Tailwind:

npm install @craco/craco

После его установки обновите ваши scripts в файле package.json, чтобы использовать craco вместо react-scripts для всех скриптов, кроме eject:

  {
    // ...
    "scripts": {
-     "start": "react-scripts start",
-     "build": "react-scripts build",
-     "test": "react-scripts test",
+     "start": "craco start",
+     "build": "craco build",
+     "test": "craco test",
      "eject": "react-scripts eject"
    },
  }

Затем создайте craco.config.js в корне нашего проекта и добавьте tailwindcss и autoprefixer как плагины PostCSS:

// craco.config.js
module.exports = {
  style: {
    postcss: {
      plugins: [
        require('tailwindcss'),
        require('autoprefixer'),
      ],
    },
  },
}

Если вы планируете использовать какие-либо другие плагины PostCSS, вам следует прочитать нашу документацию по использованию PostCSS в качестве препроцессора для получения более подробной информации о том, как лучше всего заказать их вместе с Tailwind.

Создайте свою конфигурацию файл

Затем сгенерируйте свои(й) tailwind.config.js файл:

npx tailwindcss-cli@latest init

Это создаст минимальный файл tailwind.config.js в корне вашего проекта:

// tailwind.config.js
module.exports = {
  purge: [],
  darkMode: false, // or 'media' or 'class'
  theme: {
    extend: {},
  },
  variants: {
    extend: {},
  },
  plugins: [],
}

Узнайте больше о настройке Tailwind в документации по конфигурации.

Настройте Tailwind, чтобы удалить неиспользуемые стили в продакшене

В вашем файле tailwind.config.js, настройте опцию purge, указав пути ко всем вашим components, чтобы Tailwind мог изменять дерево неиспользуемых стилей в производственных сборках:

  // tailwind.config.js
  module.exports = {
-   purge: [],
+   purge: ['./src/**/*.{js,jsx,ts,tsx}', './public/index.html'],
    darkMode: false, // or 'media' or 'class'
    theme: {
      extend: {},
    },
    variants: {
      extend: {},
    },
    plugins: [],
  }

Прочтите наше отдельное руководство по оптимизации для продакшена, чтобы узнать больше о древовидных неиспользуемых стилях для лучшей производительности.

Включите Tailwind в свой CSS

Откройте файл ./src/index.css, который Create React App генерирует для вас по умолчанию , и используйте директиву @tailwind, чтобы включить утилиты Tailwind base, components и utilities стили, заменяющие исходное содержимое файла:

/* ./src/index.css */
@tailwind base;
@tailwind components;
@tailwind utilities;

Tailwind заменит эти директивы во время сборки на все стили, которые он генерирует на основе вашей настроенной дизайн-системы.

Прочтите нашу документацию по добавлению базовых стилей, извлечению компонентов, и добавлению новых утилит для лучшие практики по расширению Tailwind с помощью вашего собственного CSS.

Наконец, убедитесь, что ваш файл CSS импортируется в файл ./src/index.js:

  // src/index.js
  import React from 'react';
  import ReactDOM from 'react-dom';
+ import './index.css';
  import App from './App';
  import reportWebVitals from './reportWebVitals';

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

  // ...

Вы закончили! Теперь, когда ты бежишь npm run start, Tailwind CSS будет готов к использованию в вашем проекте Create React App.

Далее узнайте о рабочем процессе “сначала утилиты”