我正在尝试在React 16.3.1中使用新的Context组件.我正在运行一个非常简单的例子:
const TestContext = React.createContext(); export default class Test extends Component { render () { return ( <TestContext.Provider value="abc"> <TestContext.Consumer> {value => ( <div>{value}</div> )} </TestContext.Consumer> </TestContext.Provider> ); } }
未捕获的错误:元素类型无效:期望一个字符串(对于内置组件)或一个类/函数(对于复合组件)但得到:object.
似乎Provider和Consumer组件都不是有效组件,并且不能由React呈现.
我在这里错过了什么吗?
解决方法
弄清楚了!
我将React更新为16.3.1,但没有更新ReactDOM.
运行npm uninstall -s react-dom&& npm i -s react-dom将其更新为16.3.1并解决了问题.
旁注,我不希望新的Context API依赖于ReactDOM.