Использование npm в Visual Studio 2015

Когда используешь npm в Visual Studio с NTVS, какие параметры действуют? Как мне подать заявку --save или же -g?

Будет ли это повредить проект Visual Studio в любом случае, если я должен был запустить npm за пределами Visual Studio напрямую из командной строки?

1 ответ

Я ничего не могу сказать о NTVS, потому что я никогда не использовал его. Но когда мы говорим о стандартном окне консоли диспетчера пакетов:

  1. npm install [packageName] - устанавливает пакеты локально (аналог опции --save);
  2. npm использует файл package.json выбранного проекта;
  3. Чтобы понять погоду, если npm за пределами Visual Studio повредит ваш проект или нет, вы должны знать это:

на вашем компьютере может быть несколько установок npm (и node.js). Установщик Node.js по умолчанию сохраняет свои пакеты в пути "*C:\Program Files\nodejs*" и устанавливает системную переменную PATH с этим значением. Когда вы устанавливаете пакеты с помощью опции -g, они сохраняются в пути "%APPDATA%/npm".

Поэтому, когда вы используете npm вне Visual Studio, системная консоль будет применяться к версии npm/nodejs, которая хранится в переменной PATH.

Чтобы убедиться, что вы используете ту же версию npm в Visual Studio, откройте Сервис / Параметры => Проекты и решения / Внешние веб-инструменты. Visual Studio будет использовать расположения внешних инструментов по порядку, так как они расположены в списке.

Вы можете добавить переменную PATH и поставить ее на первое место, чтобы использовать ту же версию, что и ваша system.console:

введите описание изображения здесь на этом рисунке VS будет использовать переменную PATH, тогда как "$(VSINSTALLDIR)\Web\External" и "c:\Program Files\nodejs" будут игнорироваться (хотя у меня есть избыточность, потому что моя системная переменная PATH содержит "c:\Program Files \ nodejs ").

Вы также можете проверить версию каждого npm, установленного на вашем компьютере. Просто запустите "npm -v" в консоли диспетчера пакетов VS и запустите его в системной консоли.

У меня есть та же версия для них из-за моих предпочтений:

node -v
v7.8.0

Но когда я запускаю эту команду, открывая cmd в $(VSINSTALLDIR)\Web\External path, я получаю более старую версию: введите описание изображения здесь

надеюсь это поможет =)

Другие вопросы по тегам