web-dev-qa-db-fra.com

Réagissez au port d'écoute du changement natif

J'utilise réagit nativement Android et j'ai un problème avec le visage pour déployer l'application sur un appareil Android . 

réactif au démarrage, il ne démarre pas dev sever sur le port 8081

 enter image description here

J'ai essayé quelques options mentionnées à:

1) https://facebook.github.io/react-native/docs/troubleshooting.html

2) essayé d'arrêter le processus en cours sur le numéro de port 8081, mais sans succès

Ma question est la suivante: pouvons-nous modifier le port du serveur de développement natif réactif de 8081 (valeur par défaut sous Android, peu importe le mode de modification du fichier AppDelegate.m)?

Vos réponses seront très appréciées. Merci

14
vikram jeet singh

Vous ne savez pas si cela est documenté ou non [1], vous pouvez spécifier le port via un argument CLI, comme ceci:

react-native start --port 9988

Je l'ai trouvé dans le code source, et cela a fonctionné sur ma machine locale :)

https://github.com/facebook/react-native/blob/master/local-cli/server/server.js#L30


[1] Ceci est maintenant documenté ici: https://facebook.github.io/react-native/docs/troubleshooting#using-a-port-a-port-other-than-8081

27
patrick

Je sais qu'il est tard mais pour votre information, il y a aussi une autre façon de changer votre port en permanence.

Accédez à your_app\node_modules\react-native\local-cli\server\server.js et modifiez le port 8081 en 8088.

qui sera quelque chose comme ça

    ...
      module.exports = {
      name: 'start',
      func: server,
      description: 'starts the webserver',
      options: [{
        command: '--port [number]',
        default: 8088,
        parse: (val) => Number(val),
      }
     ...

MISE À JOUR TESTÉE SUR LA RN 0.57:
1. Si vous utilisez une configuration de métro personnalisée

const config = {
  ...
  server: {
    port: 8088,
  }
  ...
};

2. Et si vous n'êtes pas alors,
Accédez à your_app\node_modules\react-native\local-cli\util\Config.js. 

const Config = {
   ...
   server: {
      port: process.env.RCT_METRO_PORT || 8088 //changed from 8081
   }
   ...
}
8
Neel Gala

Définissez RCT_METRO_PORT, exemple: 

export RCT_METRO_PORT=8765
2
vinodk

La solution la plus simple est:

react-native run-ios --port 1234

Mais nécessite 0,55 et plus.

2
Bagusflyer

Après avoir passé toute une journée et examiné de nombreuses solutions, une combinaison de suggestions m'a aidé à résoudre ce problème. Suivez les étapes ci-dessous:

  1. Créez le projet à l'aide de la commande: 'React-native init [PROJECT_NAME]' 

  2. Ouvrez le projet dans Xcode et remplacez toutes les occurrences de "8081" par "8088" et enregistrez les modifications.

  3. Ouvrez le terminal et remplacez le répertoire de travail par le répertoire de projet créé ci-dessus. Utilisez la commande suivante pour changer le port qui réagit utilise natif: React-native start --port 8088

Une fois que vous avez exécuté cette commande, vous voyez la sortie suivante dans le terminal:

 enter image description here

Comme vous pouvez le constater, cela démarre l’instance Metro. Ne tuez pas la commande ou la fenêtre du terminal. Laissez ce processus s'exécuter.

  1. Ouvrez une nouvelle fenêtre de terminal, modifiez le répertoire de travail en répertoire de projet et exécutez le projet réactif en utilisant la commande suivante:

réactif natif run-ios

Une fois le projet construit avec succès sur le deuxième terminal, une barre de progression indiquant le chargement de l'ensemble d'applications dans la première fenêtre du terminal s'affiche, comme indiqué ci-dessous:

 enter image description here Une fois le paquet chargé, l'application démarre avec succès sur le simulateur. 

J'espère que cela t'aides. Bonne codage

2
Gurunath Sripad

Suis les étapes : 

Étape 1:

vim node_modules/react-native/local-cli/server/server.js

Étape 2: Changez le port par défaut - tout autre port // exemple -> 8089

Étape 3: Retournez à project -> et faites npm démarrer 

0
user1719079
export RCT_METRO_PORT=8082
react-native start --port $RCT_METRO_PORT
react-native run-ios

https://facebook.github.io/react-native/docs/troubleshooting#using-a-port-other-than-8081

0
blcsntb

Vous pouvez utiliser ce react-native-port-patcher qui remplace le port 8081 par défaut avec le numéro de port souhaité.

0
Shivani Kumar