需要 React createContext 参数

问题描述 投票:0回答:1

我将使用 Reacts context api 加减速器。因为我发现了很多方法来实现这一点并且缺乏文档,所以我不知道我做得是否正确。 我为了拥有一个全局状态我已经这样做了:

import {createContext, useReducer} from "react";
import {appReducer} from "../reducers/appReducer";


function lazyInitializer() {
    return {db: 1}
}

export const AppContext = createContext(); //Invalid number of arguments, expected 1 (defaultValue)

const AppContextProvider = (props) => {
    const [globalState, appDispatch] = useReducer(appReducer, null, lazyInitializer);
    return (
        <AppContext.Provider value={{globalState, appDispatch}}>
            {props.children}
        </AppContext.Provider>
    )
}
export default AppContextProvider;

我必须提供

createContext
默认值吗?这是使用延迟初始化的正确方法吗?它确实按照上面的方式工作。如果有更好的解决方案实现全局状态请告诉我。 顺便说一句,我不想使用 Redux 来保持项目简单。

javascript reactjs reducers
1个回答
0
投票

只需粘贴

null
默认值即可。

© www.soinside.com 2019 - 2024. All rights reserved.