回答:
これは私がそれでやったことです:
すべてのターミナルを閉じて、ビルドを再度実行します。
別のプロジェクトからnodejsターミナルを閉じるのを忘れると、異なるバージョンの反応がインストールされていることがあります。
したがって、nodejsサーバーからフェッチするコードは、ネイティブコードと競合します。
Bundling 'index.android.js' 100.0% (1/1), done
。
build.gradle
ます。@Valに感謝
react-native run-ios
pod install
ココアポッドを使用している場合にも実行されます。
create-react-native-appを使用してreact-nativeアプリを作成した場合。app.json(expo)が必要です。そして、package.jsonファイルで、expoバージョンが一致するかどうかを確認し、それに応じて変更します。たとえば、私の場合の問題は、app.jsonファイルでexpo sdkVersion属性のバージョンが25.0.0だったので、それを23.0.0に変更すると、すべてが機能することでした。
package.json:
"dependencies": {
"expo": "^23.0.4",
"react": "16.0.0",
"react-native": "^0.50.4"
}
app.json:
{
"expo": {
"sdkVersion": "23.0.0" // before was 25.0.0
}
}
あなたのところに行ってandroid/app/build.gradle
、dependencies
セクションに追加してください:
dependencies{
compile ("com.facebook.react:react-native:0.50.3") { force = true }
}
///反応ネイティブバージョンはpackage.jsonにあります
dependencies
セクションのAndroidのアプリレベルのGradleファイルでネイティブバージョンを強制的に反応させるだけです。
compile ("com.facebook.react:react-native:0.52.0") { force = true }
私のために働いた
npm start -- --reset-cache
、走りましたreact-native run-android
これまでにこのエラーを見たことがありませんが、XcodeとReact-Nativeを一緒にうまく再生できない場合は、常にいくつかのことを行います。使用しているXcodeのバージョンを確認します。更新が必要な場合は更新します。次に、監視員とキャッシュをクリアすることは、私が次に行く場所です。キャッシュのリセットコマンドは使用しません。常にキャッシュを検証する必要があると表示されているので、スキップします(ただし、実行できますが、混乱します)。rm -rf $ TMPDIR / react- *を使用して、キャッシュされたビルドをすべて削除します。それが機能しない場合は、Xcodeでアプリをビルドしてから、そこから自分のやり方で、react-native run-iosを使用してビルドします。このエラーメッセージは、Xcodeでビルドしようとすることから始まるようです。お役に立てれば幸いです。進捗状況をお知らせください。幸運を!(また、RN 0に更新することもできます。
Expoを介してReact Nativeアプリを実行している場合、React Nativeをアップグレードすると、このエラーが発生する可能性があります(https://github.com/expo/expo/issues/923に記載されています)。
それがあなたのシナリオである場合、オプションは次のとおりです。
私はこの問題を最も長く抱えていましたが、上記の解決策のどれも役に立ちませんでした。create-react-native-app
Expoのすべてのバージョンが最新のReact Nativeをサポートしているわけではないことが判明するまで、私はプロジェクトのreactネイティブをアップグレードする途中でした。
React Native、React、Expoのどのバージョンの組み合わせが正式にサポートされているかを示すドキュメントにリンクされているこのページを見つけました。
ソース:https : //github.com/react-community/create-react-native-app/blob/master/VERSIONS.md
app.json
とpackage.json
ファイルを編集して対応するバージョンに一致させ、実行すると、npm install
すべてが再び機能するようになります。
私は物理デバイスを使用していますが、私の場合、これで問題が解決しました:
lsof -i :8081
kill -9 PID
react-native run-android
またはreact-native run-ios
)lsof -i :8081
て再構築するだけで、iOSシミュレーターでそれができました。
build.gradleファイルに次を追加します
implementation ("com.facebook.react:react-native:0.51.0") {
force = true;
}
0.51.0
package.jsonのバージョンに置き換えます
閉じて再構築するだけでは修正できないAndroid開発者の場合、エミュレーター/デバイスでアプリを手動でアンインストールします。
私にとっては、ファイルのセクションのreact-native
バージョンが原因dependency
でしたpackage.json
。そうだった:
"dependencies": {
"expo": "^27.0.1",
"react": "16.3.1",
"react-native": "~0.55.0"
}
私はそれを追いかけました:
"dependencies": {
"expo": "^27.0.1",
"react": "16.3.1",
"react-native": "0.52.0"
}
今では正常に動作します。
私の場合、iOSで直面しています。以下のコマンドを使用してすべてのキャッシュをリセットしてクリアしようとしましたが、失敗しました。根本的な原因は、誤ってどこかでパッケージャーが実行されていることが原因であると述べているにもかかわらず、再起動しました私のマックと問題はまだ残っていました。
watchman watch-del-all && rm -rf node_modules/ && yarn cache clean && yarn install && yarn start --reset-cache
解決策は、ビルドフォルダー@を削除し/ios/build
、それを実行してreact-native run-ios
解決することです
CocoaPodsを使用するiOSで同じ問題が発生する他のユーザー向け:
私は運が悪ければ上記の解決策をすべて試しました。プロジェクトにネイティブ依存関係のあるパッケージがいくつかあり、それらのいくつかは必要なポッドモジュールがインストールされています。問題は、私のPodfileでReactが指定されていることですが、Reactポッドが次のコマンドを使用して自動的にアップグレードされませんでした。react-native-git-upgrade
。
修正は、を実行して、インストールされているすべてのポッドをアップグレードすることcd ios && pod install
です。
私の場合(expoとAndroidビルドは使用していません)
package.json
"dependencies": {
"react": "16.3.1",
"react-native": "0.55.2"
}
そしてapp.json
{
"sdkVersion": "27"
}
問題を解決しました
TypeScriptの型定義が一致しない場合、この分類が行われました。
EG react-native
で0.61.5のdependencies
と@types/react-native
0.60.0でのdevDependencies
。
devDependenciesを更新するとすぐに機能しました。何も再起動する必要はありませんでした。
これは修正ではありませんが、私の場合、デバイスに複数のRNアプリがインストールされていて、知らないうちに間違ったアプリケーションから「リロード」しようとしました。(現時点では2つのアプリを同時に開発しています)したがって、正しいアプリケーションにいることを確認してください!
package.jsonで指定されたreact-nativeのバージョンを(依存関係の下で-react-nativeに)変更して、エラーメッセージに表示される「ネイティブバージョン」と同じものに変更してみてください。次に、「npm install」を再度実行します。
projectdir / android / app / build.gradleを開きます
試してください:
compile( "com.facebook.react:react-native:0.51.0"){force = true}
「com.facebook.react:react-native:0.51.0」をコンパイルする代わりに{force = true}
参照: リンク