Почему `npm init` предполагает сборку пакетов NPM? - PullRequest
0 голосов
/ 01 июня 2018

Это определенно теоретический вопрос, но почему при запуске npm init задается куча вопросов для настройки полей ниже?

"name": "my-project-that's-definitely not going to npm",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author": "",
"license": "ISC"

Очень большой процент из нас использует npm простодля аспекта управления пакетами этого.Мне кажется, что должна быть возможность не устанавливать его как что-либо, НО менеджер пакетов, поэтому просто:

"dependencies": {
  "@whatever/somepackage": ">=4.0.0-beta <5.0.0",
},

Единственное оправдание, которое я могу придумать, это то, что многие люди также используют npmкак инструмент сборки, так что это обеспечивает точку входа для запуска сценариев.Это верно?Существуют ли другие причины?

PS Я знаю, что могу использовать флаг -y для установки полей по умолчанию, но он все равно создает их.

1 Ответ

0 голосов
/ 01 июня 2018

Вы правы, что npm главная цель - менеджер пакетов.И будучи менеджером пакетов, он управляет различными аспектами пакета.Будучи пакетом, это означает, что ваш код должен быть в состоянии распространять и повторно использовать другие.Вот почему необходима базовая информация, такая как имя, версия и лицензия.

И npm init - лучшее место и лучшее время для их объявления.

Как вы упоминаете, вы можете использоватьnpm init -y чтобы использовать значения по умолчанию, чтобы вам не приходилось на них отвечать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...