Я использую api context context для своего игрового приложения и создал GameContext. js
import React, { useState, createContext } from 'react';
const GameContext = createContext();
const GameProvider = ({ children }) => {
const [startgame, setStartgame] = useState(false);
return (
<GameContext.Provider value={[startgame, setStartgame]}>
{children}
</GameContext.Provider>
);
};
export { GameContext, GameProvider };
И в приложении. js Я предоставляю контекст.
import { GameProvider, GameContext } from './context/GameContext';
const App = () => {
console.log(useContext(GameContext), 'Gamecontext');
return (
<GameProvider>
<div className="App">
{!startgame ? <WelcomeScreen />
: <GameScreen />}
</div>
</GameProvider>
);
};
export default App;
Это не работает, потому что стартовая игра недоступна в приложении. js.
Также я заметил, что useContext(GameContext)
- это undefined
. Я хочу использовать значение startgame
в приложении. js, но не могу уничтожить неопределенное значение. Как можно обеспечить и использовать контекст в одном компоненте приложения. js? Это правильный путь или я что-то упустил?