Tengo una solución simple de Visual Studio, ejecuto ASP.NET Core v2 y construyo una aplicación React.
Ahora, quiero instalar un componente simple usando el NPM. En este ejemplo en particular, podría ser:
npm install --save react-bootstrap-typeaheadQuiero que este paquete funcione solo en mi solución y en ningún otro lugar.
mi resultado:
Cuando ejecuto esto, aparece el siguiente error que obviamente tiene sentido. Si NPM cree que puede encontrar mi archivo de proyecto en 'C:\Users\LarsHoldgaard\package.json' , no tiene suerte. La ruta correcta sería C:\Users\LarsHoldgaard\Documents\Github\Likvido.CreditRisk\Likvido.CreditRisk\Likvido.CreditRisk .
npm : npm WARN saveError ENOENT: no such file or directory, open 'C:\Users\LarsHoldgaard\package.json' At line:1 char:1 + npm install --save react-bootstrap-typeahead + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: (npm WARN saveEr...d\package.json':String) [], RemoteException + FullyQualifiedErrorId : NativeCommandError npm WARN enoent ENOENT: no such file or directory, open 'C:\Users\LarsHoldgaard\package.json' npm WARN grunt-sass@2.0.0 requires a peer of grunt@>=0.4.0 but none is installed. You must install peer dependencies yourself. npm WARN react-rating@1.0.6 requires a peer of react@>=0.13.0 but none is installed. You must install peer dependencies yourself. npm WARN react-bootstrap-typeahead@2.5.1 requires a peer of react@^0.14.0 || ^15.2.0 || ^16.0.0 but none is installed. You must install peer dependencies yourself. npm WARN react-bootstrap-typeahead@2.5.1 requires a peer of react-dom@^0.14.0 || ^15.2.0 || ^16.0.0 but none is installed. You must install peer dependencies yourself. npm WARN prop-types-extra@1.0.1 requires a peer of react@>=0.14.0 but none is installed. You must install peer dependencies yourself. npm WARN react-overlays@0.8.3 requires a peer of react@^0.14.9 || >=15.3.0 but none is installed. You must install peer dependencies yourself. npm WARN react-overlays@0.8.3 requires a peer of react-dom@^0.14.9 || >=15.3.0 but none is installed. You must install peer dependencies yourself. npm WARN react-onclickoutside@6.7.1 requires a peer of react@^15.5.x || ^16.x but none is installed. You must install peer dependencies yourself. npm WARN react-onclickoutside@6.7.1 requires a peer of react-dom@^15.5.x || ^16.x but none is installed. You must install peer dependencies yourself. npm WARN react-transition-group@2.2.1 requires a peer of react@>=15.0.0 but none is installed. You must install peer dependencies yourself. npm WARN react-transition-group@2.2.1 requires a peer of react-dom@>=15.0.0 but none is installed. You must install peer dependencies yourself. npm WARN LarsHoldgaard No description npm WARN LarsHoldgaard No repository field. npm WARN LarsHoldgaard No README data npm WARN LarsHoldgaard No license field.Mi pensamiento:
Siendo un novato en la consola , supongo que solo necesitaba cambiar mi carpeta actual. Pero si ejecuto dir , estoy en la carpeta correcta y puedo ver mi package.json junto con otros archivos.
¿Cuál es la forma correcta de instalar los componentes?
package.json en su proyecto.node_modules en el mismo directorio que su archivo package.json[Shift] , haga clic derecho en la carpeta que contiene el archivo project.json .npm install --save react-bootstrap-typeaheadPara evitar navegar manualmente al directorio correcto, utilice la extensión "Abrir línea de comandos" de Mads Kristensen. Está disponible de forma gratuita en el Marketplace. Lo encuentras aquí .
Una vez instalado, puede abrir un símbolo del sistema directamente desde Visual Studio.
Sugerencia: use el método abreviado de teclado ALT+Espacio en lugar del menú contextual para abrir el símbolo del sistema.
Luego puede ejecutar su comando npm:
npm install react-bootstrap-typeaheadComo nota al margen: a partir de npm 5.0.0, los módulos instalados se agregan como una dependencia de forma predeterminada, por lo que ya no se requiere la opción --save.
Actualización 2019 :
Developer Command Prompt y Developer Power Shell ahora están integrados en Visual Studio 2019 (16.2 Preview 2), ya no se necesita una extensión.
Los encuentras en Tools/Command Line
De forma predeterminada, no se asigna ningún acceso directo, por lo que debe hacerlo usted mismo.
Creo que la forma más fácil es usar la interfaz de usuario que proporciona Visual Studio.
Cree en la raíz de su proyecto un package.json (Todo entonces, haga clic con el botón derecho en su proyecto, agregue el elemento y busque NPM . Encontrará un npm Configuration File ):
{ "name": "SomeName", "version": "1.0.0", "private": true, "devDependencies": { "react-bootstrap-typeahead": "*" } } Tenga en cuenta que * es para la última versión. Esto no es recomendable. Es mejor especificar la versión que desea. Notará que tiene soporte de inteligencia para versiones y nombres de paquetes.
Cada vez que realice cambios en el archivo json, simplemente presione CTRL + S. Visual Studio llama automáticamente a NPM y restaura los paquetes.
Para saber cómo usar la línea de comando, otros ya han respondido. Pero como soy un novato en la línea de comandos, prefiero esta manera.
Puede usar la consola del administrador de paquetes para ejecutar el comando npm.
Para abrir la Consola del administrador de paquetes, vaya a Herramientas > Administrador de paquetes Nuget y seleccione Consola del administrador de paquetes y luego ingrese su comando npm.
Actualizar:
El último estudio visual 16.8.3 en adelante, encontrará la terminal integrada en el estudio visual.
Puede encontrarlo haciendo clic derecho en su solución o un atajo Ctrl + ` : 
Utilizo un enfoque diferente, configurando npm por SOLUCIÓN, en lugar de por PROYECTO.
Por favor, consulte mi BLOG:
Una mejor manera de usar Visual Studio con npm (y Gulp)
Está funcionando bien y puede usar Command Line o Package Manager Console para instalar/actualizar/desinstalar paquetes npm. Actualmente lo estoy usando con Visual Studio 2019 y ASP.NET Core MVC.
Sumando mis 2 centavos del 2021.
Visual Studio viene con compatibilidad integrada con npm, no se requiere CLI. VS puede instalar/restaurar paquetes automáticamente en segundo plano: al abrir el proyecto y/o después de realizar cambios en el archivo packages.json . Puede habilitar esto aquí:
Por ejemplo, aquí hay un artículo sobre cómo configurar la minificación y compilación automáticas para archivos js/css a través de la herramienta npm, usando solo Visual Studio (EXENCIÓN DE RESPONSABILIDAD: yo mismo escribí esa publicación de blog el año pasado)