面试题答案
一键面试- 创建Context对象:使用
createContext
方法从react
库中创建一个Context对象。这个对象包含Provider
和Consumer
两个属性,Provider
用于传递数据,Consumer
用于接收数据(在函数组件中更多使用useContext
来接收数据)。 - 在父组件中使用Provider传递数据:在父组件中,通过
Provider
组件的value
属性传递需要共享的数据。所有位于Provider
组件内的子组件都可以访问到这个数据。 - 在子组件中接收并展示数据:在子组件中,使用
useContext
钩子函数接收Provider
传递下来的数据,然后进行展示。
以下是代码示例:
import React, { createContext, useContext } from 'react';
// 创建Context
const MyContext = createContext();
// 父组件
const ParentComponent = () => {
const data = 'Hello from parent';
return (
<MyContext.Provider value={data}>
<ChildComponent />
</MyContext.Provider>
);
};
// 子组件
const ChildComponent = () => {
const contextData = useContext(MyContext);
return <div>{contextData}</div>;
};
export default ParentComponent;