开发者问题收集

React.useContext() 一直返回未定义?[关闭]

2020-05-15
16284

我正在使用next.js并使用React Hooks +上下文来管理状态。但是,我遇到了这个问题,其中 react.usecontext() 即使我在上下文对象中传递(或者我认为,无论如何)即使返回了未定义的返回。我想念一些很明显的东西吗?发生了什么事?

我已经在const cartcontext中创建了上下文,然后在我的提供商组件中,我创建了值对象并将其作为prop将其传递给cartcontext.provider(请参阅下文, _APP.JS )。我确保上下文提供商通过添加 < h1> 元素来包装我的组件。

这个问题似乎在 index.js 中发生。我已经从 ./_ app.js 导入了CartContext错误:

“ typeError:不能破坏属性属性'react___e_webpack_imported_module_0 ___ default.a.a.usecontext(...)',因为它是不确定的”

我认为usecontext()正在返回未定义。态> 704361207

3个回答

好吧,这是一个非常简单的错误,我在 index.js 中将 CartContext 导入为 import cartContex from _app.js ,而它应该用花括号,因为它不是默认导出。因此,更正后的(功能性)代码很简单: import { car​​tContext } from _app.js

jnm
2020-05-16

尝试像这样导入:

import { CartContext } from './_app';
jozinho22
2022-03-07

我遇到了同样的错误。 我只是在导入时犯了错误并将值传递给 context.Provider

Import Like this:- import { AppContext } from "./index";

Second i passed wrong value in Provider, Pass like this :- AppContext.Provider value={{username, setUsername}}>

RAHUL GUPTA
2023-12-05