【发布时间】:2018-09-26 22:45:08
【问题描述】:
我正在使用新的 React Context API,我需要从 Context.Consumer 变量中获取消费者数据,而不是在渲染方法中使用它。无论如何我可以做到这一点吗?
举例说明我想要什么:
console.log(Context.Consumer.value);
到目前为止我测试的内容:上面的示例,测试了 Context.Consumer currentValue 和 Context Consumer 拥有的其他变量,尝试将 Context.Consumer() 作为函数执行,但没有一个起作用。
有什么想法吗?
【问题讨论】:
-
我测试了一个类似的方法,消费者内部有一个
_currentValue和_defaultValue成员,但访问Context.Consumer._currentValue.value总是返回默认值,如果没有正确初始化,则返回未定义。 -
我创建了一个 HOC npmjs.com/package/react-context-consumer-hoc,它通过在导出之前包装你的组件来实现这一点。它可能不是您要找的东西,但我想把它放在这里,因为这是我第一次遇到这个问题的地方。
标签: reactjs react-context