React Context глянь
https://ru.reactjs.org/docs/context.html
Наверно для вас тупые вопросы но мне конца недели нужно хоть +- верстать уметь, а начал дней 5 назад👍
Просто название для твоего контекста будет AuthContext Почитай доку, точно разберёшься
Все нормально, для этого и существует этот чат
А если тебе нужна просто верстка, то юзай разные скрины и все
создаешь папочку context, там файл auth.js import {createContext, useContext} from 'react'; const AuthContext = createContext(); const AuthContextProvider = ({children}) => { // Твоя логика, что будешь прокидывать в дочерние компоненты return ( <AuthContext.Provider value={{...state, update: setState}}> {children} </AuthContext.Provider> ); }; const useAuth = () => { const context = useContext(AuthContext); if (context === undefined) { throw new Error('useAuth must be used within a AuthContextProvider'); } return context; }; export {AuthContextProvider, useAuth}; потом заходишь в App.js где ты зарегал свои скрины и делаешь что то типа const App = () => { return ( <NavigationContainer> <AuthContextProvider> <DefaultStack/> </AuthContextProvider> </NavigationContainer> ); };
Конечно, это же все еще Реакт компонент, точнее дата провайдер, тебе нужно импортировать наверх реакт
Может можешь в дс чисто с этим просветит🙏
там даже написано в каком файле ошибка
это еще не всё, тебе надо как минимум создать стак со скринами который ты промапишь, чекни доку const Stack = createNativeStackNavigator(); const mapToStack = items => { return ( <Stack.Navigator> {Object.keys(items).map(() => { <Stack.Screen key={key} name={key} component={items[key]} /> } )} </Stack.Navigator> ); }; const DefaultStack = () => mapToStack({ // импортированные скрины });
Это будет в app.js?
import MyScreenComponent from './папка со скринами/Login.js' const DefaultStack = () => mapToStack({ MyScreenComponent });
А потом DefaultStack как тег в App?
Да, как я выше писал const App = () => { return ( <NavigationContainer> <AuthContextProvider> <DefaultStack/> </AuthContextProvider> </NavigationContainer> ); };
а ну и navigation container импортировать import {NavigationContainer} from '@react-navigation/native';
{Object.keys(items).map(key => <Stack.Screen key={key} name={key} component={items[key]} />)}
Обсуждают сегодня