#reactjs #react-native
Вопрос:
Смотрите ниже ошибку, которую я получаю В своем проекте React Native
ERROR Warning: React.createElement: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: undefined. You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.
Check your code at MaterialTopTabView.tsx:51.
in MaterialTopTabView (at createMaterialTopTabNavigator.tsx:44)
in MaterialTopTabNavigator (at AuthTabs.js:14)
смотрите скриншот
Смотрите код ниже
AuthTabs.js
import React from 'react';
import {createMaterialTopTabNavigator} from '@react-navigation/material-top-tabs';
import SignIn from './tabs/SignIn';
import SignUp from './tabs/SignUp';
const Tab = createMaterialTopTabNavigator();
export default function AuthTabs() {
return (
<Tab.Navigator>
<Tab.Screen
name="SignIn"
component={SignIn}
options={({}) => ({
tabBarLabel: 'Sign In',
})}
/>
<Tab.Screen
name="SignUp"
component={SignUp}
options={({}) => ({
tabBarLabel: 'Sign Up',
})}
/>
</Tab.Navigator>
);
}
Подпись
import React from 'react';
import {View, Text} from 'react-native';
export default function SignIn() {
return (
<View>
<Text>Singn In Screen</Text>
</View>
);
}
Подписка
import React from 'react';
import {View, Text} from 'react-native';
export default function SignUp() {
return (
<View>
<Text>Sign Up Screen </Text>
</View>
);
}
Я проверил все подобные вопросы, но нигде не нашел подходящего решения
Пожалуйста, посоветуйте мне, как можно исправить эту проблему
Спасибо
Ответ №1:
Возможно, основная версия вашей вкладки «Материалы» не соответствует навигации по реакции.
Выполните эту команду, если вы используете 5.x
yarn add @react-navigation/material-top-tabs@^5.x react-native-tab-view@^2.x
Или вы можете обновить react-навигацию до 6.x
Комментарии:
1. Это прямо здесь. Просто сдвинул верхние вкладки материала с 6.x до 5.x, и это сработало идеально.