RN0.30にアップグレードした後、可能な限り単純な app をビルドする場合でも、以下に示すエラーが表示され始めました。
react-native init AwesomeProject
react-native run-ios
BlurView
、VibrancyView
、およびRNSearchBar
が使用されていないにもかかわらず、警告メッセージに含まれていることです。コンソールとエラー:
2016-07-22 08:48:02.985 [warn][tid:main][RCTEventEmitter.m:52] Sending `websocketFailed` with no listeners registered.
2016-07-22 08:48:03.031 [warn][tid:com.facebook.react.JavaScript] Warning: Native component for "BlurView" does not exist
2016-07-22 08:48:03.032 [warn][tid:com.facebook.react.JavaScript] Warning: Native component for "VibrancyView" does not exist
2016-07-22 08:48:03.033 [warn][tid:com.facebook.react.JavaScript] Warning: Native component for "RNSearchBar" does not exist
2016-07-22 08:48:03.040 [error][tid:com.facebook.react.JavaScript] `Constructor` has no propType for native prop `RCTView.maxHeight` of native type `CGFloat`
If you haven't changed this prop yourself, this usually means that your versions of the native code and JavaScript code are out of sync. Updating both should make this error go away.
2016-07-22 08:48:03.043 [fatal][tid:com.facebook.react.RCTExceptionsManagerQueue] Unhandled JS Exception: `Constructor` has no propType for native prop `RCTView.maxHeight` of native type `CGFloat`
If you haven't changed this prop yourself, this usually means that your versions of the native code and JavaScript code are out of sync. Updating both should make this error go away.
2016-07-22 08:48:03.102 [error][tid:com.facebook.react.JavaScript] Module AppRegistry is not a registered callable module.
2016-07-22 08:48:03.104 [fatal][tid:com.facebook.react.RCTExceptionsManagerQueue] Unhandled JS Exception: Module AppRegistry is not a registered callable module.
このエラーの理由は、_0.28
_に更新した後、React packager(_0.30
_)の別のインスタンスがバックグラウンドで実行されていたためです。
再起動React packagerは問題を解決しました。
react-native startで反応ネイティブを再起動し、問題を解決しました。
私の場合は依存関係の非互換性が原因でしたが、この同じエラーメッセージが表示されていました。
私がそれを解決するためにしたことは:
create-react-native-app foo
を使用して新しいプロジェクトを作成します。これにより、互換性のある依存関係がインストールされます。package.json
を開き、fooのpackage.json
のバージョンと一致するように依存関係のバージョンを更新します。app.json
のsdkVersion
と一致することを確認し、必要に応じて更新します。node_modules
を削除して、すべてのパッケージを再インストールします。私はそれが役立つことを願っています!
私の場合、react-serverとreact-projectが一致しませんでした。私は間違ったNodeサーバーで間違ったプロジェクトを実行していました。
上記のいずれも機能しませんでしたが、yarn cache clean
トリックをしました。