Açısal bağlantı noktası 4200'den diğerine nasıl değiştirilir


257

4200 yerine 5000 kullanmak istiyorum.

Ne denedim kök adında bir dosya oluşturduk ember-clive aşağıdaki koda göre JSON koymak:

{
   "port": 5000
}

Ancak uygulamam hala 5000 yerine 4200'de çalışıyor



Sunucuyu da yeniden başlattınız mı?
kris

@kristjanreinhold
Ashutosh Jha

Yanıtlar:


430

Benim için işe yarayan çözüm

ng serve --port 4401    

(4401'i istediğiniz sayı ile değiştirebilirsiniz)

Ardından tarayıcıyı başlatın -> http: // localhost: 4401 /

Temel olarak, iki Uygulamaya sahiptim ve yukarıdaki yaklaşımın yardımıyla şimdi her ikisini de geliştirme ortamımda eşzamanlı olarak çalıştırabiliyorum.


'--Port 4201' seçeneği serve komutuyla kayıtlı değil
holms

6
Başkaları için sidenote: Yapmayın npm start --port 4401çünkü npm start--port'u yürütmüyor gibi görünüyor
Jordec

1
Lütfen bu yanıta da bakınız stackoverflow.com/a/52345586/3209545
callee.args

sadece bir ek, aynı zamanda sunulan uygulamayı yeni bir tarayıcı sekmesinde ekleyerek ng serve --port 4401 --open
açabilirsiniz

115

Aşağıdaki komutu girerek uygulama bağlantı noktanızı değiştirebilirsiniz,

ng hizmet - port 4200

Ayrıca, kalıcı bir kurulum için angular-cli.json dosyasını düzenleyerek bağlantı noktasını değiştirebilirsiniz.

 "defaults": {
    "serve": {
      "port": 8080
    }
  }

2
Daha yeni sürümlerde serv - port 8080 (":" yok, bunun yerine boşluk) kullanmalısınız.
Julian L.7

Bu son "varsayılan" ayar ise, sondaki virgülten kurtulmalısınız
Oswaldo Salazar

1
CLI'nin son sürümlerinde bu durum değişti - daha fazla ayrıntı için cevabıma bakın.
Nathan Friend

98

Görünüşe göre CLI'nin son sürümlerinde bazı şeyler değişti (kullanıyorum 6.0.1). ng serveProjemin portseçeneklerine ekleyerek kullanılan varsayılan bağlantı noktasını değiştirebildim angular.json:

{
    "$schema": "./node_modules/@angular/cli/lib/config/schema.json",
    "projects": {
        "my-project": {
            "architect": {
                "serve": {
                    "options": {
                        "port": 4201
                    }
                }
            }
        }
    }
}

(Bu örnekte yalnızca ilgili özellikler gösterilmiştir.)


Ev sahibini de değiştirmek istiyorum
Kunvar Singh

Bu gerçekten doğru kalıcı cevaptır
WtFudgE

59

Değiştirmek nodel_modules/angular-cli/commands/server.jskötü bir fikirdir çünkü yeni sürümünü yüklediğinizde güncellenecektir angular-cli. Bunun yerine belirtmelidir 5000 --port hizmet ng içinde package.jsonböyle:

"scripts": {
    "start": "ng serve --port 5000"
}

Ayrıca --host 127.0.0.1 ile ana bilgisayar belirtebilirsiniz


Uygulamayı nasıl başlatıyorsunuz? ng serve? Tarayıcı ile kontrol ettiğimde işe yaramıyor,localhost:5000
Ashish Ranjan

1
Bunun kabul edilen cevap olması gerektiğini düşünüyorum. Neredeyse npm startbir komut olarak kullanan
tavus kuşları için

Kalıcı yapılandırma için neden bir komut dosyası seçeneği kullanılır? Bunun için bir dosya var ve buangular.json
Mozgor

59

Bağlantı noktası ayarlarının konumu birkaç kez değişti.

Açısal CLI kullanıyorsanız 1

Değişiklik angular-cli.json

{
  "defaults": {
    "serve": {
      "host": "0.0.0.0",
      "port": 5000 
    }
  }
}

En son Açısal CLI kullanıyorsanız

Değişiklik angular.json

"projects": {
    "project-name": {
        ...
        "architect": {
            "serve": {
                "options": {
                  "host": "0.0.0.0",
                  "port": 5000
                }
            }
        }
        ...
    }
}

Herhangi bir dosyayı değiştirmeden

Komutu çalıştır

ng serve --host 0.0.0.0 --port 5000

8
Bu, her iki olasılığı da içerdiği için doğru cevap olarak düşünülmelidir: kalıcı veya geçici çözümler.
Daniel Santana

1
Kabul ediyorum @Dan
marknt15

Kalıcı değişiklikler olması durumunda, yeni bağlantı noktasının bu "angular.json" dosyasında başka bir yerde belirtilmesi gerekip gerekmediğini biliyor musunuz? Benim serveseçenek seviyesi ile iki öğeleri içerir browserTarget, optionsve configurations/production. Bu yeni portgirişi her ikisine de mi eklemeliyim options?
Mozgor

19

Kimse en son Angular CLI için cevabı güncellemedi. Angular CLI

İle latest versionaçısal-cli.json olarak değiştirildi hangi açısal-cli angular.json, sen düzenleyerek noktasını değiştirebilir angular.jsondosyası artık başına bir port belirtin"project"

projects": {
    "my-cool-project": {
        ... rest of project config omitted
        "architect": {
            "serve": {
                "options": {
                    "port": 4500
                }
            }
        }
    }
}

Bununla ilgili daha fazla bilgi edinin here


Yeni eklediğimiz yerde olduğu browserTargetgibi bir girişi de içeren `` sun / konfigürasyonlar / üretim '' girişi ne olacak ? serve / optionsport
Mozgor

1
Angular CLI
Dacomis'in

14

Genellikle bu ng setkomutu proje düzeyi için Açısal CLI ayarlarını değiştirmek için kullanırım .

ng set defaults.serve.port=4201

Değişikliklerinizi değiştirir .angular.cli.jsonve daha önce belirtildiği gibi bağlantı noktası ayarlarını ekler .

Bu değişiklikten sonra basitçe ng servekullanabilirsiniz ve tercih edilen bağlantı noktasını her seferinde belirtmeye gerek kalmadan kullanacaktır.


get / set 6.0'daki yapılandırma lehine kullanımdan kaldırılmış gibi görünüyor, bu yüzden artık çalışmıyor.
VanAlbert

10

açısal klibinize normalde npm start girdiğiniz aşağıdaki komutu da girebilirsiniz

ng serve --host "ip adresi" - port "bağlantı noktası numarası"



6

bu dosyaya git

node_modules\@angular-devkit\build-angular\src\dev-server\schema.json

ve arama portu

"port": {
  "type": "number",
  "description": "Port to listen on.",
  "default": 4200
},

varsayılan değeri istediğiniz gibi değiştirin ve sunucuyu yeniden başlatın


Benim için çalışıyor, sadece node_modules/@angular/cli/lib/config/schema.json aynı özelliği içeren belirtilen dosyayı değiştirmek için dikkat etmeniz gerekir .
lingar

5
  • Kalıcı için:

    Goto nodel_modules / açısal-cli / komutlar / server.js ara var DefaultPort = process.env.PORT || 4200; ve 4200'ü istediğiniz başka bir şeyle değiştirin.

  • Şimdi Çalıştırmak İçin:

    ng port - port 4500 ( Portunuz olarak kullanmak istediğiniz herhangi bir numara ile 4500 değişiklik yaparsınız)


1
Yerel olarak yüklenen bir paketin içeriğini değiştirmenin node_modulesiyi bir uygulama olduğunu düşünmüyorum .
Bruno Brant

5

Güncellemeler veya yeniden yükleme bu değişiklikleri kaldırabileceğinden düğüm modüllerinde değişiklik yapılması önerilmez. Açısal klipsde değiştirmek daha iyi

Açısal 9 açısal. Json

{
    "projects": {
            "targets": {
                "serve": {
                    "options": {
                         "port": 5000
                     }
                }     
            }     
    }
}  

4

Serve.js dosyasında yapılandırılmış olan varsayılan bağlantı noktası numarasını düzenleyebilirsiniz.

Yol olacak project_direcory/node_modules/angular-cli/commands/serve.js.

Bu satırı arayın -> var defaultPort = process.env.PORT || 4200;
Bu satırla değiştir ->var defaultPort = process.env.PORT || 5000;


4
Bunu okuyorsanız ve bunu yapmayı düşünüyorsanız ... lütfen, asla bağımlılık dosyalarını düzenlemeyin.
emix



4

Açısal olarak. Json:

"serve": {
          "builder": "@angular-devkit/build-angular:dev-server",
          "options": {
          "browserTarget": "projectname:build",
          "port": 5000
         }

Açısal uç kullanıyorum. Bu benim için çalıştı.


4

açısal 2 ++.

Bağlantı noktasını değiştirmek için terminaldeki aşağıdaki komutu çalıştırabilirsiniz:

ng serve --host 0.0.0.0 --port 5000.

2

Yukarıdaki cevaplarda zaten çok sayıda geçerli çözüm olmasına rağmen, burada Visual Studio Code kullanan Angular 7 projeleri için görsel bir rehber ve özel bir çözüm (muhtemelen daha eski sürümler, ancak garanti yok). Görüntü ağacında gösterildiği gibi dizinlerde schema.json dosyasını bulun ve tarayıcıda kalıcı bir bağlantı noktası değişikliği için bağlantı noktası -> varsayılan altında tamsayıyı değiştirin.

resim açıklamasını buraya girin


@ s34N Bunu duyduğuma sevindim. Cevap yardımcı olduysa, lütfen henüz yapmadıysanız gönderi üzerinde bir oy vermeyi unutmayın. Teşekkürler dostum.
themightyhulk

2

angular.jsonDosyaya git ,

"Serve" anahtar kelimesini arayın:

portAnahtar kelimeyi aşağıda gösterildiği gibi ekleyin :

 "serve": {
     "builder": "@angular-devkit/build-angular:dev-server",
     "options": {
         "browserTarget": "my-new-angular-app:build",
         "port": 3001
     },
     ...

1

Açısal'da varsayılan bağlantı noktası numarasını değiştirmenin iki yolu var.

Cli komutunun ilk yolu:

ng serve --port 2400 --open

İkinci yol yerde yapılandırma gereğidir: ProjectName\node_modules\@angular-devkit\build-angular\src\dev-server\schema.json.

schema.jsonDosyada değişiklik yapın .

{
 "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
    },

Paketi yeniden yükledikten sonra üzerine yazılabilecek node_modules içindeki dosyaların değiştirilmesi önerilmez. Sajeetharan tarafından çok iyi bir çözüm sunuldu.
Daniel Santana

1

Sadece koş

ng hizmet - portunuzu yazın

Misal:

ng serve --port 4401


1

Benim için çalışılan kod aşağıdaki gibiydi

ng serve --port ABCD

Örneğin

ng serve --port 6300

0

Tarayıcıda çalıştırmak ve açmak için otomatik olarak bayrağı kullanın -openveya-o

ng serve -o --port 4200

Not: 4200 numaralı bağlantı noktası isteğe bağlıdır. Seçtiğiniz herhangi bir liman olabilir


0

Açısal CLI dev sunucusu bağlantı noktasının değerini ayarlamak için NodeJS ortam değişkenini kullanmak isterseniz, aşağıdaki yaklaşım mümkündür:

  • ortam değişkenine (örneğin, DEV_SERVER_PORT) erişebilecek ve bu değişkenten alınan parametre değeri ng serveile çalışabilecek NodeJS betiği oluşturun --port( child_process burada bizim arkadaşımız olabilir):
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()));
  • npm üzerinden çalışan bu betiği sağlamak için package.json dosyasını güncelleyin
  • DEV_SERVER_PORTortam değişkenini ayarlamayı unutmayın ( dotenv üzerinden yapılabilir )

Ayrıca bu yaklaşımın tam açıklaması: Açısal CLI Geliştirme Sunucusu Portu .env ile nasıl değiştirilir .


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.