我无法获取contextType
作为新 React Context API 一部分的 React 属性。文件说:
可以为类的 contextType 属性分配一个由 React.createContext() 创建的 Context 对象。这使您可以使用 this.context 使用该上下文类型的最接近的当前值。您可以在任何生命周期方法中引用它,包括渲染函数。
除非我错过了什么,否则下面的代码应该this.context
在课堂上可用App
:
import React from "react";
import ReactDOM from "react-dom";
const MyContext = React.createContext({
on: false
});
import "./styles.css";
class App extends React.Component {
render() {
console.log("context: ", this.context);
return (
<div className="App">
<h1>Hello CodeSandbox</h1>
<h2>Start editing to see some magic happen!</h2>
</div>
);
}
}
App.contextType = MyContext;
const rootElement = document.getElementById("root");
ReactDOM.render(<App />, rootElement);
(此处为示例)
但是,当此代码运行时,日志语句只打印一个空对象。我希望它打印出我提供给React.createContext
函数的默认状态。
有人可以帮我理解这里发生了什么吗?