- React Native: 0,69
- @react-navigation/native: 5.9.8
- @react-navigation/stack: 5.14.9
- @react-navigation/bottom-tabs: 5.11.15
Мое приложение зависает на экране загрузки. Я получаю ошибки о вложенных NavigationContainer и ViewPropTypes.
Сообщения об ошибках
- Ошибка вложенного NavigationContainer:
Код: Выделить всё
Error: Looks like you have nested a 'NavigationContainer' inside another.
Normally you need only one container at the root of the app.
- Ошибка ViewPropTypes:
Код: Выделить всё
Invariant Violation: ViewPropTypes has been removed from React Native.
Migrate to ViewPropTypes exported from 'deprecated-react-native-prop-types'
- Ошибка свойства:
Код: Выделить всё
Property 'getInitialState' doesn't exist
App.tsx:
Код: Выделить всё
import React from 'react';
import { NavigationContainer, useLinking } from '@react-navigation/native';
import MainScreen from './screens/MainScreen';
export default function App() {
const ref = React.useRef(null);
const [isReady, setIsReady] = React.useState(false);
const [initialState, setInitialState] = React.useState();
const { getInitialState } = useLinking(ref, {
prefixes: ['myapp://'],
config: {
screens: {
Home: 'home',
},
},
});
React.useEffect(() => {
getInitialState()
.then(state => {
if (state !== undefined) {
setInitialState(state);
}
})
.finally(() => {
setIsReady(true);
});
}, [getInitialState]);
if (!isReady) {
return Loading...;
}
return (
);
}
Код: Выделить всё
import React from 'react';
import { NavigationContainer } from '@react-navigation/native';
import { createStackNavigator } from '@react-navigation/stack';
const Stack = createStackNavigator();
export default function MainScreen() {
return (
);
}
Код: Выделить всё
import React from 'react';
import { View, Text } from 'react-native';
export default function HomeScreen() {
return (
Home Screen
);
}
- Удаление NavigationContainer из MainScreen — возникла ошибка «Не удалось зарегистрировать навигатор»
- Использование ссылки вместо useLinking — все равно зависает при загрузке
- Установка устаревших-реагирующих-native-prop-types — ошибка ViewPropTypes сохраняется
- Как мне структурировать навигацию с помощью React Navigation 5.9.8?
- Следует ли использовать useLinking или ссылку?
- Где должен находиться NavigationContainer?
- Как исправить ошибку ViewPropTypes?
- Приложение работало над более старая версия React Native (0.63)
- Недавно обновлена до RN 0.69
- На данный момент необходимо поддерживать React Navigation 5.x (невозможно обновить до v6)
Подробнее здесь: https://stackoverflow.com/questions/798 ... loading-sc