基本步骤
- 创建共享状态:在父组件中使用
createStore
创建状态。
- 创建 Context:使用
createContext
创建上下文对象。
- 提供 Context:父组件通过
Context.Provider
向下传递状态。
- 子组件消费 Context:子组件通过
Context.Consumer
或 useContext
来获取共享状态。
示例代码
import { createContext, createStore } from 'solid-js';
// 创建上下文
const MyContext = createContext();
// 父组件
const Parent = () => {
const [state, setState] = createStore({
message: '初始消息'
});
return (
<MyContext.Provider value={state}>
<Child />
</MyContext.Provider>
);
};
// 子组件
const Child = () => {
const state = MyContext.useContext();
return <div>{state.message}</div>;
};
export default function App() {
return (
<div>
<Parent />
</div>
);
}