Использовать конкретные версии npm / node для разных решений VS? - PullRequest
0 голосов
/ 07 марта 2019

У меня есть решение VS 2015, для которого требуется, чтобы у меня была установлена ​​последняя версия nodejs, добавленная в путь к внешним веб-инструментам.(веб-проект, использующий файлы packages.json и gulp для извлечения модулей css / js и компиляции ssas во время сборки)

У меня также есть более старые решения, в которых используются более старые версии модулей и которые работают с версиями npm по умолчанию.(1.4.9) и узел (0.10.31).После того, как я установил более новые nodejs извне и добавил в путь к внешним веб-инструментам, npm теперь выдает различные ошибки.Когда я работаю с ошибками, я склонен в конечном итоге столкнуться с проблемами в github, когда кто-то открыл проблему и получил ответ: «Вы используете слишком старую версию node / npm».

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

Есть ли способ указать, что некоторые проекты используют узел / npm по умолчанию, в то время как другие проектыиспользовать более новый?То есть способ сделать путь внешних веб-инструментов параметром уровня proj / sln вместо глобального параметра Visual Studio.

Ответы [ 2 ]

0 голосов
/ 07 марта 2019

Вы можете использовать Node Version Manager (NVM) для решения вашей проблемы.

NVM позволяет запускать несколько версий узлов на одном компьютере. Вы можете включить любую версию узла с помощью NVM

для получения дополнительной информации.информация, на которую вы можете ссылаться

https://medium.com/appseed-io/how-to-run-multiple-versions-of-node-js-with-nvm-for-windows-ffbe5c7a2b47

0 голосов
/ 07 марта 2019

Вы можете использовать что-то вроде nvm .

В корневой директории вашего проекта вы должны установить .nvmrc и просто указать там номер версии.Например, мой файл будет иметь v10.9.0, а затем я просто зайду в каталог и из командной строки введите следующее:

nvm use

Вы также можете nvm установить свою версию npmтакже.Посмотрите этот ответ

...