Ошибка : скорее всего, вы забыли экспортировать свой компонент из файла, в котором он определен, или вы, возможно, перепутали импорт по умолчанию и именованный импорт

#react-native

#реагировать-родной

Вопрос:

Я получил эту ошибку при попытке импортировать и использовать другой компонент, который я создал в другом файле. И я получил такую ошибку :

 Error: Element 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 the render method of `Sidebar`.  

Это мой код для экспорта компонента в качестве компонента по умолчанию в customDrawer.js какой файл находится в том же каталоге:

 const Sidebar = ({ isDarkTheme, setIsDarkTheme, ...props }) =gt; {  const handlePress = () =gt; {  props.navigation.dispatch(DrawerActions.closeDrawer());  props.navigation.navigate("Settings");  };  const { colors } = useTheme();  const toggleTheme = () =gt; {  setIsDarkTheme();  };  // console.log('navi--?',props.navigation);  return (  lt;Container style={{ backgroundColor: colors.background }}gt;  lt;Header  style={{  backgroundColor: colors.background,  borderBottomWidth: 0,  marginTop: 70,  borderWidth: 0,  }}  gt;  lt;StatusBar barStyle="dark-content" backgroundColor="#ffffff" /gt;  lt;Rightgt;  lt;Button transparentgt;  lt;TouchableOpacity onPress={() =gt; handlePress()}gt;  {/* lt;Ionicons name="ios-options" size={28} color={colors.icon} /gt; */}  lt;/TouchableOpacitygt;  lt;/Buttongt;  lt;/Rightgt;  lt;/Headergt;  lt;Contentgt;  lt;DrawerContentScrollView {...props}gt;  lt;DrawerItemList {...props} /gt;  lt;/DrawerContentScrollViewgt;   lt;TouchableOpacitygt;  lt;View  style={{  display: "flex",  flexDirection: "row",  alignItems: "center",  paddingRight: 20,  paddingLeft: 20,  paddingTop: 10,  }}  gt;  lt;Text style={{ flex: 1, color: colors.text }}gt;Dark Themelt;/Textgt;  lt;Viewgt;  lt;Switch onValueChange={toggleTheme} value={isDarkTheme} /gt;  lt;/Viewgt;  lt;/Viewgt;  lt;/TouchableOpacitygt;  lt;/Contentgt;  lt;/Containergt;  ); };  const styles = StyleSheet.create({});  export default Sidebar;  

А потом, в моем App.js У меня есть импортные компоненты, подобные этому :

 import Sidebar from "./customDrawer";  

Все импортные товары, которые я использую в customDrawer.js :

 import {  DrawerContentScrollView,  DrawerItemList, } from "@react-navigation/drawer"; import { Button, Container, Content, Header, Right } from "native-base"; import React, { useState } from "react"; //import { Ionicons } from "@expo/vector-icons"; import { StyleSheet, Text, View, Switch } from "react-native"; import { StatusBar } from "react-native"; import { TouchableOpacity } from "react-native"; import { DrawerActions } from "@react-navigation/native"; import { useTheme } from "@react-navigation/native";  

Комментарии:

1. правильно ли вы возвращаете SideBar деньги?

2. В этом //Some code in here корень проблемы. 🙂

3. @jted95 Я отредактировал вопрос с полным кодом

4. @Nishant Я отредактировал вопрос с полным кодом

5. В последней строке вашего Sidebar.js добавить боковую панель экспорта по умолчанию;