Câu trả lời:
Trong phiên bản mới nhất của góc, điều này được đặt trong các angular.json
tập tin cấu hình . Thí dụ:
{
"$schema": "./node_modules/@angular/cli/lib/config/schema.json",
"projects": {
"my-project": {
"architect": {
"serve": {
"options": {
"port": 4444
}
}
}
}
}
}
Bạn cũng có thể sử dụngng config
để xem / chỉnh sửa giá trị:
ng config projects["my-project"].architect["serve"].options {port:4444}
Trong các phiên bản trước, phần này được đặtangular-cli.json
bên dưới defaults
phần tử:
{
"defaults": {
"serve": {
"port": 4444,
"host": "10.1.2.3"
}
}
}
Cho đến thời điểm hiện tại, tính năng này không được hỗ trợ, tuy nhiên nếu đây là thứ làm phiền bạn thì một sự thay thế sẽ nằm trong gói.json của bạn ...
"scripts": {
"start": "ng serve --host foo.bar --port 80"
}
Bằng cách này bạn có thể chạy npm start
Một tùy chọn khác nếu bạn muốn thực hiện điều này trên nhiều dự án là tạo một bí danh, mà bạn có khả năng có thể đặt tên ngserve
sẽ thực thi lệnh trên của bạn.
Bạn có thể định cấu hình cổng HTTP mặc định và cổng được sử dụng bởi máy chủ LiveReload với hai tùy chọn dòng lệnh:
ng serve --host 0.0.0.0 --port 4201 --live-reload-port 49153
Điều này đã thay đổi trong CLI Angular mới nhất.
Tên tập tin thay đổi thành angular.json
, và cấu trúc cũng thay đổi.
Đây là những gì bạn nên làm:
"projects": {
"project-name": {
...
"architect": {
"serve": {
"options": {
"host": "foo.bar",
"port": 80
}
}
}
...
}
}
Một tùy chọn khác là chạy ng serve
lệnh với --port
tùy chọn, ví dụ:
ng serve --port 5050
(tức là cho cổng 5050)
Ngoài ra, lệnh : ng serve --port 0
, sẽ tự động gán một cổng có sẵn để sử dụng.
--port 0
chút là thông tin tốt đẹp nhưng tôi không chắc nó trả lời câu hỏi.
Chúng tôi có hai cách để thay đổi số cổng mặc định trong Angular.
Cách đầu tiên là bằng lệnh CLI:
ng serve --port 2400 --open
Cách thứ hai là theo cấu hình tại vị trí:
ProjectName\node_modules\@angular-devkit\build-angular\src\dev-server\schema.json.
Thực hiện các thay đổi trong tệp giản lược.
{
"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
},
Bạn có thể lưu chúng trong một tệp, nhưng bạn phải đặt nó vào .ember-cli
(ít nhất là tại thời điểm này); xem https://github.com/angular/angular-cli/issues/1156#issuecomment-227412924
{
"port": 4201,
"liveReload": true,
"host": "dev.domain.org",
"live-reload-port": 49153
}
chỉnh sửa: bây giờ bạn có thể đặt chúng trong angular-cli.json như cam kết https://github.com/angular/angular-cli/commit/da255b0808dcbe2f9da62086baec98dacc4b7ec9 , trong bản dựng 1.0.0-beta.30
Nếu bạn đang dự định chạy dự án góc trong máy chủ / IP tùy chỉnh và Cổng thì không cần thực hiện thay đổi trong tệp cấu hình
Lệnh sau làm việc cho tôi
ng serve --host aaa.bbb.ccc.ddd --port xxxx
Ở đâu,
aaa.bbb.ccc.ddd --> IP you want to run the project
xxx --> Port you want to run the project
Thí dụ
ng serve --host 192.168.322.144 --port 6300
Kết quả cho tôi là
Nếu bạn đang ở trên windows, bạn có thể làm theo cách này:
ng serve --host 192.168.1.2 --open
Đây không phải là cách tiêu chuẩn nhưng thoải mái khi sử dụng (mà tôi cảm thấy).
đây là những gì tôi đưa vào pack.json (chạy angular 6):
{
"name": "local-weather-app",
"version": "1.0.0",
"scripts": {
"ng": "ng",
"start": "ng serve --port 5000",
"build": "ng build",
"test": "ng test",
"lint": "ng lint",
"e2e": "ng e2e"
},
Sau đó, một khởi đầu npm đơn giản sẽ kéo vào nội dung bắt đầu. Cũng có thể thêm các tùy chọn khác vào nội dung
Chỉ có một điều bạn phải làm. Nhập cái này vào Dấu nhắc lệnh của bạn: ng phục vụ - cổng 4021 [hoặc bất kỳ cổng nào khác mà bạn muốn gán, ví dụ: 5050, 5051, v.v.]. Không cần phải thay đổi trong các tập tin.
0.0.0.0
thay vì ip máy chủ để nghe trên tất cả các thiết bị Ethernet. Bằng cách này, cả máy chủ cục bộ và địa chỉ IP công cộng đều có thể được sử dụng.