Использование абсолютных путей в Create React App с помощью Craco

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Create React App (CRA) является мощным инструментом для быстрого создания и разработки React приложений. Однако, в некоторых случаях, работа с относительными путями может стать неудобной и затруднить поддержку кода. В этой статье мы рассмотрим, как использовать абсолютные пути с помощью Craco в Create React App, чтобы упростить работу с модулями и компонентами.

Что такое Craco?

Craco (Create React App Configuration Override) - это инструмент, который позволяет нам переопределить конфигурацию Create React App без необходимости эжектировать проект. Он предоставляет гибкую возможность настройки Webpack и Babel, что позволяет нам вносить изменения в сборку и разработку нашего приложения без необходимости вносить изменения в саму структуру проекта.

Шаг 1: Создание приложения с Create React App

Если у вас еще нет Create React App, вы можете создать новое приложение следующей командой:

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

Шаг 2: Установка Craco

Установите пакет @craco/craco, который позволяет нам использовать Craco для переопределения конфигурации Create React App.

npm install @craco/craco --save

Шаг 3: Создание файла Craco.config.js

В корневом каталоге вашего проекта создайте файл craco.config.js. Этот файл будет содержать настройки, которые мы хотим переопределить. Давайте рассмотрим пример использования абсолютных путей:

const path = require("path");

module.exports = {
  webpack: {
    alias: {
      shared: path.resolve(__dirname, "src/shared"),
      app: path.resolve(__dirname, "src/app"),
      widgets: path.resolve(__dirname, "src/widgets"),
      entities: path.resolve(__dirname, "src/entities"),
      pages: path.resolve(__dirname, "src/pages"),
      features: path.resolve(__dirname, "src/features"),
    },
  },
};

Шаг 4: Изменение скриптов в package.json

Теперь, когда у нас есть наш файл craco.config.js, нужно обновить скрипты в package.json, чтобы использовать Craco вместо стандартных скриптов react-scripts.

"scripts": {
    "start": "craco start",
    "build": "craco build",
    "test": "craco test",
  },

Шаг 5: Перезапустите приложение

После того, как мы внесли настройки в файл craco.config.js и изменили скрипты в package.json, давайте перезапустим наше приложение, чтобы убедиться, что все работает правильно.

npm start

Применение абсолютных путей

Теперь, когда Craco настроен, мы можем использовать абсолютные пути вместо относительных в нашем коде. Например:

// Вместо
import { Input } from "../shared/ui/Input";

// Можно использовать
import { Input } from "shared/ui/Input";

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

Заключение

В этой статье мы рассмотрели, как использовать Craco для настройки Create React App и внедрения абсолютных путей. Абсолютные пути помогают улучшить читаемость кода и упрощают разработку, особенно в больших проектах. Использование Craco предоставляет гибкую возможность настройки конфигурации без необходимости эжектирования проекта, что делает процесс разработки более удобным и эффективным.

Источник: https://habr.com/ru/articles/752250/


Интересные статьи

Интересные статьи

Привет! В этой статье хочу поделиться тем, как мы создали инструмент на основе google sheets для контроля товарных остатков на складе Озон по схеме работы FBO (full by Озон). Я расскажу, как таблица п...
Артефакты, которые отличают подделку от реальных данных, могут находиться в спектральной или временной областях. Их надежное обнаружение обычно зависит от ансамбля сложных систем, где каждая подсистем...
В этом руководстве демонстрируется пример решения для сбора, отслеживания и обмена данными пульсовой оксиметрии для нескольких пользователей. Он построен с использов...
Подслушивание личных разговоров — одна из самых распространённых и неприятных угроз приватности. Не зря многие заклеивают микрофоны и камеры на ноутбуках, чтобы сохранить в секрете са...
Введение Модель дисплея называется H016IT01. Данный дисплей интересен прежде всего тем, что он является транфлективным(transflective). Это означает, что изображение на нем должно быть видно даже...