Usando angular-cli con el ng serve
comando, ¿cómo puedo especificar un puerto predeterminado para que no tenga que pasar la --port
bandera manualmente cada vez?
Me gustaría cambiar el puerto predeterminado 4200.
fuente
Usando angular-cli con el ng serve
comando, ¿cómo puedo especificar un puerto predeterminado para que no tenga que pasar la --port
bandera manualmente cada vez?
Me gustaría cambiar el puerto predeterminado 4200.
Actualización para @ angular / cli @ 9.x: y más
En angular.json
puede especificar un puerto por "proyecto"
"projects": {
"my-cool-project": {
... rest of project config omitted
"architect": {
"serve": {
"options": {
"port": 1337
}
}
}
}
}
Todas las opciones disponibles:
https://angular.io/guide/workspace-config#project-tool-configuration-options
Alternativamente, puede especificar el puerto cada vez que ejecute ng serve así:
ng serve --port 1337
Con este enfoque, puede poner esto en un script en su package.json para que sea más fácil ejecutarlo cada vez / compartir la configuración con otros miembros de su equipo:
"scripts": {
"start": "ng serve --port 1337"
}
Legado:
Actualización para @ angular / cli final:
Dentro angular-cli.json
puede especificar el puerto en los valores predeterminados:
"defaults": {
"serve": {
"port": 1337
}
}
Legacy-er:
Probado en [email protected]
El servidor angular-cli
viene del ember-cli
proyecto. Para configurar el servidor, cree un .ember-cli
archivo en la raíz del proyecto. Agregue su configuración JSON allí:
{
"port": 1337
}
Reinicie el servidor y servirá en ese puerto.
Hay más opciones especificadas aquí: http://ember-cli.com/#runtime-configuration
{
"skipGit" : true,
"port" : 999,
"host" : "0.1.0.1",
"liveReload" : true,
"environment" : "mock-development",
"checkForUpdates" : false
}
En Angular 2 [email protected],
Para ejecutar un nuevo proyecto en un puerto diferente, una forma es especificar el puerto mientras ejecuta el comando ng serve.
o de la otra manera, puede editar su parte de scripts de archivo package.json y adjuntar el puerto a su variable de inicio como mencioné a continuación y luego simplemente ejecutar "npm start"
de esta manera es mucho mejor donde no necesita definir el puerto explícitamente cada vez.
fuente
Use scripts npm en su lugar ... Edite su package.json y agregue el comando a la sección de scripts.
Entonces solo ejecuta
npm start
fuente
Ahora puede especificar el puerto en .angular-cli.json bajo los valores predeterminados:
Probado en angular-cli v1.0.6
fuente
Para @ angular / cli v6.2.1
El archivo de configuración del proyecto
angular.json
puede manejar múltiples proyectos (espacios de trabajo) que se pueden servir individualmente.ng config projects.my-test-project.targets.serve.options.port 4201
Donde la
my-test-project
parte es el nombre del proyecto que configuró con elng new
comando como aquí:Legado:
Usualmente uso el
ng set
comando para cambiar la configuración de CLI angular para el nivel de proyecto.Los cambios cambian su .angular.cli.json y agrega la configuración del puerto como se mencionó anteriormente .
Después de este cambio, puede usarlo simplemente
ng serve
y usará el puerto preferido sin la necesidad de especificarlo cada vez.fuente
En cuanto a Angular CLI: 7.1.4 , hay dos formas comunes de lograr cambiar el puerto predeterminado .
No 1
En el
angular.json
, agregue la--port
opción deserve
parte y useng serve
para iniciar el servidor.No 2
En el
package.json
, agregue la--port
opción ayng serve
usenpm start
para iniciar el servidor.fuente
La respuesta proporcionada por elwyn es correcta. Pero también debe actualizar la configuración del transportador para e2e.
En angular.json,
En e2e / protractor.conf.js
fuente
Puede haber una situación en la que desee utilizar la variable de entorno NodeJS para especificar el puerto del servidor de desarrollo de CLI angular. Una de las posibles soluciones es mover el servidor de desarrollo CLI que se ejecuta en un script NodeJS separado, que leerá el valor del puerto (por ejemplo, del archivo .env) y lo usará ejecutándose
ng serve
con elport
parámetro:Luego puede a) ejecutar este script directamente a través de
node run-env
, b) ejecutarlo a través de npm actualizando package.json, por ejemplorun-env.js
debería comprometerse con el repositorio,.env
no debería. Se pueden encontrar más detalles sobre el enfoque en esta publicación: Cómo cambiar el puerto del servidor de desarrollo de CLI angular a través de .env .fuente