React Native meldet den Fehler „Ein Parameter vom Typ ‚NSArray<id<RCTBridgeModule>> kann nicht initialisiert werden“ (Lösung)

React Native meldet den Fehler „Ein Parameter vom Typ ‚NSArray<id<RCTBridgeModule>> kann nicht initialisiert werden“ (Lösung)

Kürzlich wurde beim Ausführen eines alten RN-Projekts mit Xcode der folgende Codefehler gemeldet:

Ein Parameter vom Typ „NSArray<id<RCTBridgeModule>> *“ kann nicht initialisiert werden.
mit einem L-Wert vom Typ ‚NSArray<Class> *__strong‘
Ein Parameter vom Typ „NSArray<Class> *“ kann nicht initialisiert werden.
mit einem L-Wert vom Typ 'NSArray<id<RCTBridgeModule>> *__strong'
Ein Parameter vom Typ „NSArray<id<RCTBridgeModule>> *“ kann nicht initialisiert werden.
mit einem R-Wert vom Typ ‚NSArray<Class> *‘

Dies ist ein Problem nach dem Upgrade auf XCode 12.5. Fügen Sie einfach das folgende Skript zur Datei ios/Podfile hinzu.

post_install führt |Installer| aus
## Fix für XCode 12.5
  Suchen und Ersetzen(
  „../node_modules/react-native/React/CxxBridge/RCTCxxBridge.mm“,
  "_initializeModules:(NSArray<id<RCTBridgeModule>> *)Module", 
  "_initializeModules:(NSArray<Klasse> *)Module")
  
  Suchen und Ersetzen(
  „../node_modules/react-native/ReactCommon/turbomodule/core/platform/ios/RCTTurboModuleManager.mm“,
  "RCTBridgeModuleNameForClass(Modul))", 
  „RCTBridgeModuleNameForClass(Klasse(Modul)))“
  )
Ende

def find_and_replace(dir, findstr, replacestr)
  Dir[dir].each do |name|
      text = Datei.lesen(Name)
      ersetzen = text.gsub(findstr,replacestr)
      wenn Text != Ersetzen
          setzt "Fix: " + Name
          File.open(name, "w") { |file| file.puts ersetzen }
          STDOUT.flush
      Ende
  Ende
  Dir[dir + '*/'].each(&method(:find_and_replace))
Ende

Führen Sie dann den Befehl pod install erneut aus, um es zu installieren.

Dies ist das Ende dieses Artikels über die React Native-Berichterstattung. Ein Parameter vom Typ „NSArray<id<RCTBridgeModule>>“ kann nicht initialisiert werden. Fehler (Lösung). Weitere relevante React Native-Fehlerinhalte finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • Zusammenfassung der React-Grundlagen
  • Detaillierte Erläuterung der Datenübertragung zwischen React-Elternkomponenten und -Kindkomponenten
  • Detaillierte Erklärung der Rolle des Schlüssels in React
  • Detaillierte Hinweise zu React für Einsteiger

<<:  Detaillierte Erklärung der Top-Befehlsausgabe in Linux

>>:  Tipps zur Datenstatistik in MySQL

Artikel empfehlen

Detaillierte Erläuterung der asynchronen Axios-Kommunikation in Vue

1. Zuerst erstellen wir eine JSON-Datei zur inter...

So verwenden Sie den MySQL-Autorisierungsbefehl „grant“

Die Beispiele in diesem Artikel laufen auf MySQL ...

CentOS 7 - Lösungsprozessdiagramm für vergessene Passwörter

brauchen Unabhängig davon, ob es sich um ein Wind...

So überwachen Sie mehrere JVM-Prozesse in Zabbix

1. Szenariobeschreibung: Unsere Umgebung verwende...

Vue + Spring Boot realisiert die Bestätigungscodefunktion

In diesem Artikelbeispiel wird der spezifische Co...

Kostenloses Tool zur Überprüfung der Richtigkeit von HTML-, CSS- und RSS-Feeds

Ein Trick zum Umgang mit dieser Art von Fehlern be...

Vue implementiert Beispielcode für Links- und Rechtsgleiteffekte

Vorwort Die bei der persönlichen tatsächlichen En...

So zeigen Sie Versionsinformationen in Linux an

So zeigen Sie Versionsinformationen unter Linux a...

js realisiert Warenkorb-Add- und Subtraktions- sowie Preisberechnungsfunktionen

In diesem Artikel wird der spezifische Code von j...