Предполагается ли, что package.json редактируется вручную? Может ли такая программа, как npm, просто просмотреть файлы, просмотреть операторы require и использовать их для помещения необходимых записей в файл package.json? Есть ли такие программы?
412
npm link
Ответы:
Файл package.json используется npm для изучения вашего проекта node.js.
Используйте
npm init
для создания файлов package.json для вас!Он поставляется в комплекте с Npm. Прочитайте документацию здесь: https://docs.npmjs.com/cli/init.
Кроме того, есть официальный инструмент, который вы можете использовать для программного создания этого файла: https://github.com/npm/init-package-json
источник
npm init
было именно то, что я искал! Также после этого я обычно запускаю,npm shrinkwrap
чтобы создатьnpm-shrinkwrap.json
файлnpm init
: Используйтеnpm install <pkg> --save
впоследствии, чтобы установить пакет и сохранить его как зависимость в файле package.json.npm init
в консоли диспетчера пакетов из Visual Studio 2015 он просто отображается[...] Press ^C at any time to quit.
и останавливается, ничего не спрашивая и не создавая файл json. Я что-то пропустил?npm init --force --yes
является одним вкладышем для создания этого файлаСначала беги
... задаст вам несколько вопросов ( сначала прочтите это ) о вашем проекте / пакете, а затем создайте для вас файл package.json.
Затем, когда у вас есть файл package.json, используйте
или
... установить зависимость и автоматически добавить его в свой
package.json
«sdependencies
список.(Примечание. Возможно, вам придется вручную настроить диапазоны версий для ваших зависимостей.)
источник
package.json
, это обычно обрабатывается автоматически.--save
больше не требуется в новых версиях npmЯ просто написал простой скрипт для сбора зависимостей в ./node_modules. Это соответствует моему требованию на данный момент. Это может помочь некоторым другим, я выкладываю это здесь.
В моем случае вышеприведенный скрипт выводит:
Теперь вы можете скопировать и вставить их. Радоваться, веселиться!
источник
npm ls --depth=0
будет печатать более или менее так же (не уверен, если это было в 2012 году, хотя)a
и пакетa
нуждается пакетовb
иc
, этот скрипт будет выводить все уровни, поэтомуa
,b
,c
что не правильно. Должен только выводитьсяa
, подпакеты будут автоматически разрешены.npm init
создать файл package.json, а затем вы используете
ls node_modules/ | xargs npm install --save
заполнить модули, которые есть в папке node_modules.
Изменить: @paldepind указал, что вторая команда является избыточной, потому что
npm init
теперь автоматически добавляет то, что у вас есть в вашей папке node_modules /. Я не знаю, было ли это всегда так, но теперь, по крайней мере, это работает без второй команды.источник
npm init
автоматически добавляются зависимости на основе установленных пакетов и что нет необходимости запускать вторую команду.npm dedupe
, которое вытягивает зависимости, которые совместно используются вашими модулями, из этих модулей и сохраняет их на верхнем уровне вашегоnode_modules
каталога. Но это не трогаетpackage.json
! Благодаря этому вы можете зафиксировать и поделиться своими дедуплицированными настройками.Командная строка :
создаст файл package.json
Для установки, обновления и удаления пакетов в соответствии с зависимостями в файл package.json:
Командная строка :
автоматически добавит последнюю версию пакета под зависимостями в файл package.json
EX:
Командная строка :
также автоматически добавит последнюю версию пакета в соответствии с зависимостями в файл package.json
если вам нужна конкретная версия для пакета, используйте эту командную строку :
автоматически добавит конкретную версию пакета под зависимостями в файл package.json
EX:
если вам нужен определенный диапазон версий для пакета, используйте эту Командную строку :
автоматически добавит последнюю версию для пакета между диапазонами версий под зависимостями в файл package.json
EX:
Для получения более подробной информации о том , как написать версию для пакета НОГО Doc
Командная строка :
обновит пакеты в файле package.json и автоматически добавит обновленную версию для всех пакетов, находящихся под зависимостями, в файл package.json
Командная строка :
автоматически удалит пакет из зависимостей в файл package.json и удалит пакет из папки node_module
источник
Запуск
npm init -y
делает вашеpackage.json
все по умолчанию.Затем вы можете изменить
package.json
соответственно.Это экономит время много раз, предотвращая нажатие
enter
на каждую команду вnpm init
источник
Теперь вы можете использовать Yeoman - современный инструмент для веб-приложений на терминале узла, выполнив 3 простых шага.
Во-первых, вам нужно установить yo и другие необходимые инструменты:
Чтобы создать веб-приложение, установите генератор generator-webapp generator:
Беги йо и ... все готово
Yeoman может написать стандартный код для всего вашего веб-приложения или контроллеров и моделей. Он может запустить веб-сервер предварительного просмотра для редактирования и компиляции; Мало того, что вы также можете запускать свои модульные тесты, минимизировать и объединять код, оптимизировать изображения и многое другое ...
Yeoman (yo) - инструмент для работы с лесами, который предлагает экосистему каркасных лесов, называемых генераторами, которые можно использовать для выполнения некоторых утомительных задач, упомянутых ранее.
Grunt / gulp - используется для сборки, предварительного просмотра и тестирования вашего проекта.
Bower - используется для управления зависимостями, поэтому вам больше не нужно вручную загружать свои библиотеки переднего плана.
источник
Основываясь на ответе Pylinux, ниже приведено решение для ОС Windows,
Надеюсь, поможет.
источник
используйте команду npm init -f для создания файла package.json и после этого используйте --save после каждой команды, чтобы каждый модуль автоматически обновлялся внутри вашего package.json для ex: npm install express --save
источник
1. Выбор
Если вы git и пользователь GitHub:
generate-package
проще, чемnpm init
.еще
и / или вам не нравится
package.json
шаблон, который генерирует пакет илиnpm init
генерирует:Вы можете создать свой собственный шаблон с помощью строительных лесов приложений , как генерировать , паруса или Yeoman .
2. Актуальность
Этот ответ актуален для марта 2018 года. В дальнейшем данные из этого ответа могут устареть.
Автор этого ответа лично использовал generate-package в марте 2018 года.
3. Ограничения
Вам нужно использовать git и GitHub для использования generate-package.
4. Демонстрация
Например, я создаю пустую папку
sasha-npm-init-vs-generate-package
.4.1. генерировать-пакет
Команда:
package.json
:4.2. npm init
Я думаю, что
generate-package
проще, тоnpm init
.5. Настройка
Это создать свой собственный
package.json
шаблон, см генерировать и YEOMAN примеров.источник