Я пытаюсь изменить пакет npm с несколькими зависимостями. Так как выполнение npm install -g .занимает много времени. У меня есть другие варианты, кроме удаления зависимостей из packages.json?
Я пытаюсь изменить пакет npm с несколькими зависимостями. Так как выполнение npm install -g .занимает много времени. У меня есть другие варианты, кроме удаления зависимостей из packages.json?
Ответы:
Опция --no- option теперь реализована в соответствии с этой документацией https://docs.npmjs.com/cli/install :
The --no-optional argument will prevent optional dependencies from being installed.
Просматривая документы, вы не видите ничего, кроме --no-optionalпереключателя.
Это SO Q & A под названием: npm installустанавливает все зависимости моего проекта по сети, даже если они уже установлены или доступны из кэша, может показаться, что есть --skip-installedпереключатель. Но документы не содержат никаких ссылок на этот переключатель.
Если вы разрабатываете это node_moduleсамостоятельно, не тратьте свое время на npm installs, вместо этого используйте npm link.
Короче говоря, вы создаете символическую ссылку на папку вашего модуля в глобальной папке, принадлежащей npm, а затем в своей папке приложения вы просите npm использовать эту символическую связанную папку.
Это вносит изменения, которые вы вносите в папку модуля, чтобы немедленно отразиться в вашем приложении.
Вот основные шаги (скопировано из учебника, связанного ниже, обязательно прочитайте учебник для важных ошибок):
src/my_module npm link". Это создает символическую ссылку из глобальной папки на src/my_moduleпапку.src/my_appnpm link my_module. Эти ссылки node_modules/my_moduleв данном проекте в глобальную папку, так что requireвызовы ищет my_moduleветер до его загрузки из папки развития
src/my_module.См. Это руководство: http://justjs.com/posts/npm-link-developing-your-own-npm-modules-without-tears
и официальные документы для npm link: https://docs.npmjs.com/cli/link
Эта функция была запрошена еще в 2010 году, но, к сожалению, была проигнорирована и закрыта: https://github.com/npm/npm/issues/340
Я перепробовал несколько вариантов и, наконец, нашел довольно простое решение - переименуйте файл package.json во что-то еще до установки doint npm, а затем верните его обратно после завершения установки:
mv package.json package.bak
npm install <package_name> --no-save
mv package.bak package.json
--ignore-packageили что-то.