Respuesta rápida:
Ese flag (-S) sirve para que se almacene la dependencia en tu package.json
.
Respuesta detallada:
El comando npm i -S @foo/bar
es una forma de instalar un paquete usando npm.
La opción -S
hoy en día no hace nada en particular, ya que es el comportamiento predeterminado de npm.
-S
es una abreviatura de --save
, que era necesario en versiones anteriores de npm (versión 4.x y anteriores) para agregar el paquete instalado a la sección dependencies
de tu archivo package.json
. Esto son las dependencias que deben de ser instaladas en producción.
Sin embargo, a partir de npm versión 5.0.0, el comportamiento predeterminado cambió, y ahora cuando instalas un paquete usando simplemente npm install <paquete>
, se añade automáticamente a las dependencies
en tu package.json
, sin necesidad de especificar --save
o -S
. Aun así, algunas personas siguen usando -S
por costumbre o para asegurarse de que el comportamiento sea claro para quienes puedan estar menos familiarizados con las versiones más recientes de npm.