Я точно выполнил инструкции из этого: https://www.npmjs.com/package/react-native-splash-screen А также просмотр видео на YouTube, которое проходит по тем же шагам.
Мой код:
import * as React from 'react';
import SplashScreen from 'react-native-splash-screen';
import HomePage from './src/Home';
import {navigationRef} from './RootNavigation';
import * as RootNavigation from './RootNavigation.js';
const Stack = createStackNavigator();
export default class App extends React.Component {
componentDidMount() {
setTimeout(1000);
SplashScreen.hide();
}
render() {
return (
<NavigationContainer ref={navigationRef}>
<Stack.Navigator>
<Stack.Screen
name="Home"
component={HomePage}
/>
</Stack.Navigator>
</NavigationContainer>
);
}
}
Приложение работает именно так, как должно, но только в Интернете. Я удаляю метод componentDidMount. Строка, в которой я установил SplashScreen.hide (); это то, что вызывает ошибку.
Я получаю следующую ошибку:
TypeError: null is not an object (evaluating '_reactNativeSplashScreen.default.hide')
This error is located at:
in App (at renderApplication.js:45)
in RCTView (at AppContainer.js:109)
in RCTView (at AppContainer.js:135)
in AppContainer (at renderApplication.js:39)
componentDidMount
App.js:47:4
Я попытался выполнить ручную установку, убедившись, что response-native-spla sh -screen установлен и запущен npm install, но ничего не работает.