ฉันต้องการใช้ 5000 แทน 4200 ..
สิ่งที่ฉันได้ลองคือฉันสร้างไฟล์ด้วยชื่อรูทember-cli
แล้ววาง JSON ตามรหัสด้านล่าง:
{
"port": 5000
}
แต่แอปของฉันยังคงทำงานบน 4200 แทนที่จะเป็น 5000
ฉันต้องการใช้ 5000 แทน 4200 ..
สิ่งที่ฉันได้ลองคือฉันสร้างไฟล์ด้วยชื่อรูทember-cli
แล้ววาง JSON ตามรหัสด้านล่าง:
{
"port": 5000
}
แต่แอปของฉันยังคงทำงานบน 4200 แทนที่จะเป็น 5000
คำตอบ:
ทางออกสำหรับฉันคือ
ng serve --port 4401
(คุณสามารถเปลี่ยน 4401 เป็นหมายเลขใดก็ได้ที่คุณต้องการ)
จากนั้นเปิดเบราว์เซอร์ -> http: // localhost: 4401 /
โดยพื้นฐานแล้วฉันมีแอพพลิเคชั่นสองตัวและด้วยความช่วยเหลือของวิธีการข้างต้นตอนนี้ฉันสามารถเรียกใช้ทั้งสองพร้อมกันในสภาพแวดล้อมการพัฒนาของฉัน
npm start --port 4401
เพราะnpm start
ดูเหมือนจะไม่รัน --port
ng serve --port 4401 --open
คุณสามารถเปลี่ยนพอร์ตแอปพลิเคชันของคุณโดยป้อนคำสั่งต่อไปนี้
ng ให้บริการ - พอร์ต 4200
นอกจากนี้สำหรับการตั้งค่าแบบถาวรคุณสามารถเปลี่ยนพอร์ตได้ด้วยการแก้ไขไฟล์ angular-cli.json
"defaults": {
"serve": {
"port": 8080
}
}
ดูเหมือนว่าสิ่งต่าง ๆ จะมีการเปลี่ยนแปลงใน CLI รุ่นล่าสุด (ฉันกำลังใช้6.0.1
) ฉันสามารถเปลี่ยนพอร์ตเริ่มต้นที่ใช้ng serve
โดยเพิ่มport
ตัวเลือกในโครงการของฉันangular.json
:
{
"$schema": "./node_modules/@angular/cli/lib/config/schema.json",
"projects": {
"my-project": {
"architect": {
"serve": {
"options": {
"port": 4201
}
}
}
}
}
}
(แสดงเฉพาะคุณสมบัติที่เกี่ยวข้องในตัวอย่างนี้)
เปลี่ยนเป็นความคิดที่ไม่ดีเท่าที่มันจะได้รับการปรับปรุงเมื่อคุณติดตั้งรุ่นใหม่ของnodel_modules/angular-cli/commands/server.js
angular-cli
แต่คุณควรระบุng เสิร์ฟ - พอร์ต 5000ในpackage.json
สิ่งนี้:
"scripts": {
"start": "ng serve --port 5000"
}
คุณยังสามารถระบุโฮสต์ด้วย--host 127.0.0.1
ng serve
? ดูเหมือนจะไม่ทำงานเมื่อฉันตรวจสอบในเบราว์เซอร์ด้วยlocalhost:5000
npm start
เป็นคำสั่ง
angular.json
ตำแหน่งสำหรับการตั้งค่าพอร์ตเปลี่ยนไปสองสามครั้ง
เปลี่ยนแปลง angular-cli.json
{
"defaults": {
"serve": {
"host": "0.0.0.0",
"port": 5000
}
}
}
เปลี่ยนแปลง angular.json
"projects": {
"project-name": {
...
"architect": {
"serve": {
"options": {
"host": "0.0.0.0",
"port": 5000
}
}
}
...
}
}
เรียกใช้คำสั่ง
ng serve --host 0.0.0.0 --port 5000
serve
ระดับตัวเลือกที่มีสองรายการที่มีbrowserTarget
, และoptions
configurations/production
ฉันควรเพิ่มport
รายการใหม่นี้ทั้งในรายการเหล่านั้นหรือเพียงรายการoptions
เดียว?
ไม่มีใครอัปเดตคำตอบสำหรับ Angular CLI ล่าสุดได้ล่าสุด Angular CLI
ด้วยlatest version
angular-cli ซึ่ง angular-cli.json เปลี่ยนชื่อเป็นangular.json
คุณสามารถเปลี่ยนพอร์ตโดยแก้ไขangular.json
ไฟล์ที่คุณระบุพอร์ตต่อ"project"
projects": {
"my-cool-project": {
... rest of project config omitted
"architect": {
"serve": {
"options": {
"port": 4500
}
}
}
}
}
อ่านเพิ่มเติมเกี่ยวกับเรื่องนี้ here
browserTarget
รายการเช่นเดียวกับserve / options
ที่เราเพิ่มใหม่port
?
ฉันมักจะใช้ng set
คำสั่งเพื่อเปลี่ยนการตั้งค่า Angular CLI สำหรับระดับโครงการ
ng set defaults.serve.port=4201
มันเปลี่ยนแปลงเปลี่ยน.angular.cli.json
และเพิ่มการตั้งค่าพอร์ตเป็นมันกล่าวก่อนหน้านี้
หลังจากการเปลี่ยนแปลงนี้คุณสามารถใช้งานได้อย่างง่ายดายng serve
และมันจะใช้พอร์ตที่ต้องการโดยไม่จำเป็นต้องระบุทุกครั้ง
นอกจากนี้คุณยังสามารถป้อนคำสั่งด้านล่างใน cli เชิงมุมของคุณซึ่งปกติคุณใส่เริ่มต้น NPM
ng ให้บริการ - โฮสต์ "ที่อยู่ ip" - พอร์ต "หมายเลขพอร์ต"
คุณยังสามารถเขียนคำสั่งนี้: ng serve -p 5000
ไปที่ไฟล์นี้
node_modules\@angular-devkit\build-angular\src\dev-server\schema.json
และค้นหาพอร์ต
"port": {
"type": "number",
"description": "Port to listen on.",
"default": 4200
},
เปลี่ยนค่าเริ่มต้นสิ่งที่คุณต้องการและรีสตาร์ทเซิร์ฟเวอร์
node_modules/@angular/cli/lib/config/schema.json
ที่มีคุณสมบัติเดียวกัน
สำหรับถาวร:
ไปที่nodel_modules / angular-cli / คำสั่ง / server.js ค้นหาvar defaultPort = process.env.PORT | | 4200; และเปลี่ยน 4200 เป็นสิ่งอื่นที่คุณต้องการ
วิธีเรียกใช้ตอนนี้:
ng เสิร์ฟ - พอร์ต 4500 (คุณเปลี่ยน 4500 เป็นหมายเลขใด ๆ ที่คุณต้องการใช้เป็นพอร์ตของคุณ)
node_modules
เครื่องเป็นวิธีปฏิบัติที่ดี
ไม่แนะนำให้เปลี่ยนในโมดูลโหนดเนื่องจากการอัพเดตหรือการติดตั้งใหม่อาจลบการเปลี่ยนแปลงเหล่านั้น ดังนั้นดีกว่าที่จะเปลี่ยนแปลงใน CLI เชิงมุม
Angular 9 ใน angular.json
{
"projects": {
"targets": {
"serve": {
"options": {
"port": 5000
}
}
}
}
}
คุณสามารถแก้ไขหมายเลขพอร์ตเริ่มต้นที่กำหนดค่าไว้ในไฟล์ serv.js
project_direcory/node_modules/angular-cli/commands/serve.js
เส้นทางจะ
ค้นหาบรรทัดนี้ -> var defaultPort = process.env.PORT || 4200;
แทนที่ด้วยบรรทัดนี้ ->var defaultPort = process.env.PORT || 5000;
เพียงแค่เรียกใช้ ng serve --port 5000 --open
เรียกใช้คำสั่งด้านล่างนี้นอกเหนือจาก 4200
ng serve --port 4500
ใน angular.json:
"serve": {
"builder": "@angular-devkit/build-angular:dev-server",
"options": {
"browserTarget": "projectname:build",
"port": 5000
}
ฉันกำลังใช้ angi-cli สิ่งนี้ใช้ได้สำหรับฉัน
ในเชิงมุม 2 ++
หากต้องการเปลี่ยนพอร์ตคุณสามารถเรียกใช้คำสั่งด้านล่างในเทอร์มินัล:
ng serve --host 0.0.0.0 --port 5000.
แม้ว่าจะมีคำตอบที่ถูกต้องอยู่มากมายในคำตอบข้างต้น แต่นี่เป็นคำแนะนำแบบเห็นภาพและวิธีแก้ปัญหาเฉพาะสำหรับโครงการ Angular 7 (อาจเป็นรุ่นก่อนหน้านี้เช่นกัน ค้นหา schema.json ในไดเรกทอรีตามที่แสดงในแผนผังรูปภาพและแก้ไขจำนวนเต็มภายใต้พอร์ต -> เริ่มต้นสำหรับการเปลี่ยนพอร์ตถาวรในเบราว์เซอร์
ไปที่angular.json
ไฟล์
ค้นหาคำว่า "เสริฟ":
เพิ่มport
คำหลักตามที่แสดงด้านล่าง:
"serve": {
"builder": "@angular-devkit/build-angular:dev-server",
"options": {
"browserTarget": "my-new-angular-app:build",
"port": 3001
},
...
เรามีสองวิธีในการเปลี่ยนหมายเลขพอร์ตเริ่มต้นใน Angular
วิธีแรกในการใช้คำสั่ง cli:
ng serve --port 2400 --open
ProjectName\node_modules\@angular-devkit\build-angular\src\dev-server\schema.json
วิธีที่สองคือการกำหนดค่าที่ตั้ง:
ทำการเปลี่ยนแปลงในschema.json
ไฟล์
{
"title": "Dev Server Target",
"description": "Dev Server target options for Build Facade.",
"type": "object",
"properties": {
"browserTarget": {
"type": "string",
"description": "Target to serve."
},
"port": {
"type": "number",
"description": "Port to listen on.",
"default": 2400
},
เพียงแค่เรียกใช้
ng เสิร์ฟ - พอร์ตyourport
ตัวอย่าง:
ng serve --port 4401
รหัสทำงานให้ฉันเป็นดังนี้
ng serve --port ABCD
ตัวอย่างเช่น
ng serve --port 6300
หากต้องการเรียกใช้และเปิดในเบราว์เซอร์ให้ใช้แฟล็ก-open
หรือโดยอัตโนมัติ-o
ng serve -o --port 4200
หมายเหตุ:พอร์ต 4200 นั้นเป็นอิสระ มันสามารถพอร์ตใด ๆ ที่คุณเลือก
หากคุณต้องการใช้ตัวแปรสภาพแวดล้อม NodeJS เพื่อตั้งค่าพอร์ตของเซิร์ฟเวอร์ Angular CLI dev วิธีต่อไปนี้เป็นไปได้:
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()));
DEV_SERVER_PORT
ตัวแปรสภาพแวดล้อม (สามารถทำได้ผ่านdotenv )นี่คือคำอธิบายที่สมบูรณ์ของวิธีการนี้: วิธีเปลี่ยน Angular CLI Development Server Port ผ่าน . env
นี่จะเปิดหน้าต่างของคุณโดยอัตโนมัติเช่นกัน
ng serve -o --port 4801