webentwicklung-frage-antwort-db.com.de

React-Native-Start gibt ungültigen regulären Ausdruck ungültigen Fehler

Ich folgte dem folgenden Link, um mit React-Native zu beginnen

Erste Schritte mit React Native

Ich habe versucht, eine native App ohne Expo zu erstellen, also habe ich gemäß der Dokumentation den folgenden Befehl befolgt

npm install -g react-native-cli
react-native init AwesomeProject

Nach dem Ausführen Android Befehl

react-native run-Android

Es gab mir folgenden Fehler auf dem Emulator

(enter image description here

Also habe ich den Befehl start verwendet, um den U-Bahn-Server auszuführen

react-native start

Dieser Befehl gab mir einen weiteren Fehler in der Konsole

(enter image description here

14
user4241989

Die Lösung besteht darin, die blacklist.js Datei im Modul metro-config Dateien wie oben beantwortet. Aber jedes Mal, wenn Sie npm/yarn install Sie müssen es erneut ändern.

Deshalb habe ich eine Lösung gefunden, mit der Sie Zeit sparen, indem Sie die Datei jedes Mal aufrufen und ändern:

Ich habe eine Bibliothek verwendet, die Dateien mit JavaScript bearbeitet:

  1. Installieren Sie das Modul "In Datei ersetzen":
npm install --save replace-in-file
  1. Erstellen Sie eine Datei auf derselben Ebene wie node_module Ordnername: metro-fix.js pro Beispiel.

  2. Kopieren Sie dieses Skript und fügen Sie es ein:

//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);
}
  1. Jetzt jedes Mal, wenn Sie npm install Renn einfach:
node metro-fix.js

Siehe In Datei ersetzen Dokumente.

1
Moussaabmma

ja, wechseln Sie einfach zu Node Version 10 und es wird funktionieren.

nvm install <version>
nvm use <version>

es klappt...... :)

1
Shekhar Kumar

Ich habe dieses Problem mit diesem Schritt gelöst:

  1. Deinstallieren Sie Knoten v12 und installieren Sie Knoten v8.9.4
  2. react-Native-Cli neu installieren
  3. projekt neu erstellen react-native init myApp --version 0.60.0
  4. react-native start

Ich hoffe es hilft

0
Alhaddi Mulyadi

befehle schließen Eingabeaufforderung und U-Bahn-Bundler, wiederholen Sie den Vorgang

0
Majid Aziz

Es liegt daran, dass die Knotenversion höher ist.

  1. Eine der Lösungen besteht darin, dass Sie die Knotenversion einfach von 12.x Auf 10.x Herabstufen oder 12.x deinstallieren und 10.x installieren können

  2. Was ist andererseits, wenn Sie 12.x für ein anderes Projekt verwenden möchten? Die folgende Lösung macht es also einfacher. Sie können nvm verwenden, um die verschiedenen Versionen des Knotens zu steuern.

Installieren Sie also zuerst nvm von hier https://github.com/coreybutler/nvm-windows/releases

Denken Sie nach der Installation daran, den nvm-Pfad zur Systemvariablen hinzuzufügen

dann nvm install 10.18.1 64

dann nvm install 12.14.1 64

um alle installierten Versionen aufzulisten nvm list

wenn Sie von einer Version zu einer anderen wechseln möchten, verwenden Sie den Befehl

nvm use 10.18.1  OR nvm use 12.14.1
0
Deepak N

ja, ich stehe auch vor diesen Problemen. Tatsächlich wird Node.js für die meisten Benutzer als Version 10.16.3 LTS empfohlen. Mit dem folgenden Befehl choco wird die neueste Version von 12.11.0 installiert. choco install -y nodejs.install python2 jdk8

Ich habe ein Downgrade durchgeführt Node Version von 12.11.0 auf 10.16.3 LTS und es hat bei mir funktioniert.