Мне действительно нужны все эти зависимости?

#react-native

#react-native

Вопрос:

Я новичок react native , и я замечаю, что когда я создаю новый проект, используя react-native init projectName это, он создает что-то вроде 600 папок в node_modules папке.

Я как бы ожидал, что смогу создать простой проект с только необходимыми зависимостями, а затем добавлять новые материалы по мере необходимости, как я бы делал на любом другом языке. Я действительно не знаю, что такое какая-либо из зависимостей, и из примерно полудюжины вещей, которые мне были нужны до сих пор, мне пришлось установить новую зависимость и ничего не использовал отсюда, кроме essential react и react-native modules .

Так ли вы, ребята, начинаете свои проекты, или это содержит сотни дополнительных функций, которые не обязательно должны быть в моем проекте, и если да, то как мне создать простой проект? Я попытался просмотреть параметры для init команды и увидел один вызов skip-install , который выглядел так, как будто он будет установлен без установки всех зависимостей, но, похоже, это не возымело никакого эффекта.

Комментарии:

1. большинство папок предназначены только для целей разработки. за сценой происходит множество вещей, таких как: компиляция вашего кодера до более старой версии. если вы используете typescript, скомпилируйте его в JS. минимизировать, объединять живой сервер и т. Д. И т. Д. ….. все это собственный модуль

2. обычно у вас есть какая-то команда типа «npm run build», которая создает ваше производственное приложение, которое намного меньше

3. @Ifaruki Если я столкнусь с ошибкой в модуле и попытаюсь открыть файл, чтобы выяснить, что происходит, не очень здорово перебирать сотни папок, чтобы найти нужную. Я бы предпочел, чтобы он был чистым и имел только то, что мне нужно. Если эти модули действительно требуются react, тогда все в порядке… Я просто установлю любые сторонние модули addl в пользовательскую папку. Но если нет, то я бы так же быстро их удалил. Это то, что я пытался спросить … они действительно необходимы или просто установлены как часть шаблона по умолчанию. Может быть, вы ответили на это, но если да, то мне это непонятно.

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

Ответ №1:

Папка модуля узла содержит все зависимости всего приложения. Вы можете проверить это в каждой папке Readme.md досье. Если вы добавите какую-либо новую библиотеку в свой package.json, там будет все указано. Для начала create-react-app содержит

  • компилятор (Babel),
  • пакет (Webpack),
  • линтер (ESLint),
  • инструмент конвейера моделирования (SCSS),
  • сервер разработки с перезагрузкой в реальном времени,
  • минификатор кода,
  • тестовый бегун (шутка),

Комментарии:

1. Вы напомнили мне о «create-react-app». Недавно я использовал «react-native init» для создания проектов, совершенно забыв об этом. Итак, я только что попробовал create-react-app, и он немного чище в корне, но, что интересно, в нем почти вдвое больше модулей. Сумасшедший. Но я пытаюсь выяснить, действительно ли эти модули в основном требуются react или многие из них просто включены как часть шаблона, но на самом деле не используются (если вы специально не ссылаетесь на них в своем проекте)?