Чи є можливість встановити пакет npm без залежностей?


21

Я намагаюся змінити пакет npm з декількома залежностями. Як таке npm install -g .потрібно тривати тривалий час. Чи є у мене інші варіанти, крім видалення залежностей від пакети.json?

Відповіді:



7

Якщо переглядати документи, у неї, здається, немає жодної опції поза --no-optionalкомутатором.

Неперевірений / непідтверджений

Це запитання і відповіді під назвою: npm installвстановлює всі мережі мого проекту через мережу, навіть якщо вони вже встановлені або доступні з кешу , здавалося б, означає, що є --skip-installedкомутатор. Але документи не посилаються на цей перемикач.


7

Якщо ви розробляєте це node_moduleсамостійно, не витрачайте час на npm installs, а використовуйте npm link.

Коротше кажучи, ви створюєте символьне посилання на папку свого модуля в глобальній папці, що належить npm, а потім у папці додатка ви просите npm використовувати цю символічну пов'язану папку.

Це робить зміни, внесені в папку модулів, негайно відображатися у вашій програмі.

Ось основні кроки (скопійовані з підручника, пов'язаного нижче, переконайтесь, що читайте підручник для важливих досягнень):

  1. cd до src/my_module
  2. Виконати " npm link". Це створює символічне посилання з глобальної папки в src/my_moduleпапку.
  3. cd до src/my_app
  4. Біжи npm 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


Не зміна прийнятої відповіді, а підтримка, тому що це корисно для мого конкретного випадку.
Джастін Шановний

4

Ця функція була запрошена ще в 2010 році, але, на жаль, її було проігноровано та закрито: https://github.com/npm/npm/isissue/340

Я спробував купу варіантів, і, нарешті, знайшов досить просте рішення - перейменуйте package.json на щось інше перед встановленням nint npm, а потім поверніть його до завершення установки:

mv package.json package.bak
npm install <package_name> --no-save
mv package.bak package.json

2
Вау, це серйозно все-таки єдиний спосіб? Це смішно, має бути прапор --ignore-packageчи щось таке.
ЯкобТеДев

2
Це рішення добре , і до сих пір це може бути кращим рішенням мого питання: stackoverflow.com/questions/53532845 / ...
aGuegu
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.