#reactjs #react-context
#реагирует на #реагировать-контекст
Вопрос:
Я использую контекст для вызова функции HelloWorld в своем приложении React. Он работает в onClick, но по какой-то причине он не работает, когда я определяю его в функции.
export const TestProvider = () =gt; { const helloWorld = () =gt; console.log('hello world'); return ( lt;TestContext.Provider value={{ helloWorld }}gt; )} export const useTestContext = () =gt; { const context = useContext(TestContext) return context }
- Это работает
const { helloWorld } = useTestContext() return ( lt;button onClick={helloWorld} /gt; )
- Это не сработало бы
const { helloWorld } = useTestContext() const handleHelloWorld = async () =gt; { await helloWorld }
Как я могу устроиться на работу handleHelloWorld
здесь?
Комментарии:
1. Если вы добавите к
helloWorld
нему перентезис, это не сработает? Я имею в видуawait helloWorld()
.2. Обратный вызов должен быть вызван кем-то другим. В последнем фрагменте handleHelloWorld-это обратный вызов, а HelloWorld-нет, вы несете ответственность за его вызов.