具有空依赖项的 useCallback,那么作为回调参数传递的是什么?
useCallback with empty dependencies, then what is passed as callback param?
我对 React 不是很陌生,但下面的代码很难理解。
const UIContext = React.createContext();
const initialFilter = { ... };
export function UIProvider({ children }) {
const [queryParams, setQueryParamsBase] = useState(initialFilter);
const setQueryParams = useCallback((nextQueryParams) => { // <- my problem is here
setQueryParamsBase((prevQueryParams) => {
... // some operations
return nextQueryParams;
});
}, []);
const value = {
queryParams,
setQueryParamsBase,
setQueryParams,
};
return (
<UIContext.Provider value={value}>
{children}
</UIContext.Provider>
);
}
我知道 useCallback
但在上面的代码中,一个名为 nextQueryParams
的变量作为回调的参数传递。
那是什么nextQueryParams
?变量名称听起来与查询参数有关,但是我无法从 React 文档中找到作为参数传递给回调的内容。
请知道的朋友帮帮我
useCallback
只需要 一个函数 。从字面上看只是一个普通的旧功能。它不需要具有预定义参数或任何东西的特殊函数。
因此 setQueryParams
通过 value
对象属性传递给 UIContext.Provider
组件。在该组件内部,它可以在传递参数时使用该函数,例如 setQueryParams(someValue)
。 someValue
将成为 useCallback
.
函数中的 nextQueryParams
参数
我对 React 不是很陌生,但下面的代码很难理解。
const UIContext = React.createContext();
const initialFilter = { ... };
export function UIProvider({ children }) {
const [queryParams, setQueryParamsBase] = useState(initialFilter);
const setQueryParams = useCallback((nextQueryParams) => { // <- my problem is here
setQueryParamsBase((prevQueryParams) => {
... // some operations
return nextQueryParams;
});
}, []);
const value = {
queryParams,
setQueryParamsBase,
setQueryParams,
};
return (
<UIContext.Provider value={value}>
{children}
</UIContext.Provider>
);
}
我知道 useCallback
但在上面的代码中,一个名为 nextQueryParams
的变量作为回调的参数传递。
那是什么nextQueryParams
?变量名称听起来与查询参数有关,但是我无法从 React 文档中找到作为参数传递给回调的内容。
请知道的朋友帮帮我
useCallback
只需要 一个函数 。从字面上看只是一个普通的旧功能。它不需要具有预定义参数或任何东西的特殊函数。
因此 setQueryParams
通过 value
对象属性传递给 UIContext.Provider
组件。在该组件内部,它可以在传递参数时使用该函数,例如 setQueryParams(someValue)
。 someValue
将成为 useCallback
.
nextQueryParams
参数