J'ai suivi le lien suivant pour commencer avec react-native
Premiers pas avec react native
J'ai essayé de créer une application native sans expo, donc selon la documentation, j'ai suivi la commande suivante
npm install -g react-native-cli
react-native init AwesomeProject
Après l'exécution Android
react-native run-Android
Cela m'a donné l'erreur suivante sur l'émulateur
J'ai donc utilisé la commande start pour exécuter le serveur de métro
react-native start
Cette commande m'a donné une autre erreur dans la console
La solution est de changer le blacklist.js
fichier dans le module metro-config
fichiers comme indiqué ci-dessus. Mais chaque fois que vous exécutez npm/yarn install
vous devrez le modifier à nouveau.
J'ai donc trouvé une solution qui vous fera gagner du temps pour aller dans le fichier et le changer à chaque fois:
J'ai utilisé une bibliothèque qui édite des fichiers en utilisant JavaScript:
npm install --save replace-in-file
Créez un fichier au même niveau que node_module
nom du dossier: metro-fix.js
par exemple.
Copiez collez ce script dedans:
//Load the library
const replace = require('replace-in-file');
// path for metro config file
const path = 'node_modules/metro-config/src/defaults/blacklist.js';
// creating options for editing the file
const options = [
{
files: path,
from: 'modules[/',
to: 'modules[\\/',
},
{
files: path,
from: 'react[/',
to: 'react[\\/',
},
{
files: path,
from: 'dist[/',
to: 'dist[\\/',
},
];
try {
let results;
// looping on each option
options.forEach(e => {
results = replace.sync(e);
console.log('Replacing "'+e.from+'" by "'+e.to+'" results:', results[0].hasChanged);
});
} catch (error) {
console.error('Error occurred:', error);
}
npm install
lancez simplement:node metro-fix.js
Voir Remplacer dans le fichier documents.
oui, passez simplement à Node version 10 et cela fonctionnera.
nvm install <version>
nvm use <version>
ça marche...... :)
J'ai résolu ce problème avec cette étape:
react-native init myApp --version 0.60.0
react-native start
J'espère que ça aide
fermer Commands Prompt et metro bundler, recommencez
C'est parce que la version du nœud est plus élevée.
L'une des solutions est que vous pouvez facilement rétrograder la version du nœud de 12.x
à 10.x
ou désinstallez 12.x et installez 10.x
D'un autre côté, si vous souhaitez utiliser 12.x pour un autre projet. La solution ci-dessous vous facilite donc la tâche. Vous pouvez nvm qui peut contrôler les multiples versions de node.
Alors installez d'abord nvm à partir d'ici https://github.com/coreybutler/nvm-windows/releases
Une fois installé, n'oubliez pas d'ajouter le chemin nvm à la variable système
puis nvm install 10.18.1 64
puis nvm install 12.14.1 64
pour lister toutes les versions installées nvm list
chaque fois que vous souhaitez passer d'une version à une autre, utilisez la commande
nvm use 10.18.1 OR nvm use 12.14.1
oui, je suis également confronté à ces problèmes. en fait Node.js recommandé pour la plupart des utilisateurs est la version 10.16.3 LTS. L'utilisation de la commande choco ci-dessous installera la dernière version de 12.11.0. choco install -y nodejs.install python2 jdk8
Je rétrograde Node version de 12.11.0 à 10.16.3 LTS et cela a fonctionné pour moi.