我想用5000而不是4200。
我尝试在根名称ember-cli上创建一个文件,并按照下面的代码放置JSON:
{
"port": 5000
}
但我的应用程序仍然运行在4200,而不是5000
我想用5000而不是4200。
我尝试在根名称ember-cli上创建一个文件,并按照下面的代码放置JSON:
{
"port": 5000
}
但我的应用程序仍然运行在4200,而不是5000
当前回答
如果你想使用NodeJS环境变量来设置Angular CLI开发服务器的端口值,可以采用以下方法:
创建NodeJS脚本,该脚本可以访问环境变量(比如DEV_SERVER_PORT),并可以运行ng serve,使用该变量的——port参数值(child_process可能是我们的朋友):
const child_process = require('child_process');
const child = child_process.exec(`ng serve --port=${process.env.DEV_SERVER_PORT}`);
child.stdout.on('data', data => console.log(data.toString()));
更新包。Json提供这个脚本通过NPM运行 不要忘记设置DEV_SERVER_PORT环境变量(可以通过dotenv完成)
下面是对这种方法的完整描述:如何通过.env更改Angular CLI开发服务器端口。
其他回答
不建议更改节点模块,因为更新或重新安装可能会删除这些更改。所以最好在angular cli中进行更改
Angular .json中的Angular 9
{
"projects": {
"targets": {
"serve": {
"options": {
"port": 5000
}
}
}
}
}
修改nodel_modules/angular-cli/commands/server.js是个坏主意,因为当你安装新版本的angular-cli时,它会被更新。相反,你应该在package中指定ng serve——port 5000。Json是这样的:
"scripts": {
"start": "ng serve --port 5000"
}
你也可以用——host 127.0.0.1指定主机
在CLI的最新版本(我使用的是6.0.1)中,情况似乎发生了变化。我可以通过在项目的angular.json中添加一个port选项来改变ng serve使用的默认端口:
{
"$schema": "./node_modules/@angular/cli/lib/config/schema.json",
"projects": {
"my-project": {
"architect": {
"serve": {
"options": {
"port": 4201
}
}
}
}
}
}
(本例中只显示相关属性。)
我通常使用ng set命令来更改Angular CLI中项目级别的设置。
ng set defaults.serve.port=4201
它会改变。angular。cli。Json,并像前面提到的那样添加端口设置。
在此更改之后,您可以简单地使用ng serve,它将使用首选端口,而不需要每次都指定它。
端口设置的位置已经更改了几次。
如果使用Angular CLI
改变angular-cli.json
{
"defaults": {
"serve": {
"host": "0.0.0.0",
"port": 5000
}
}
}
如果使用最新的Angular CLI
改变angular.json
"projects": {
"project-name": {
...
"architect": {
"serve": {
"options": {
"host": "0.0.0.0",
"port": 5000
}
}
}
...
}
}
无需更改任何文件
执行命令
ng serve --host 0.0.0.0 --port 5000