我根据状态使用 useCallback 定义了一个函数。我想从另一个函数调用这个函数,它在调用它之前更改状态并使用 useCallback 定义。我该怎么办?
示例:
const refreshPage = useCallback(
() => {
if (state == '1')
// action
},
[state]
);
const onChangeText = useCallback(
(state) => {
setState(state);
refreshPage();
},
[refreshPage]
);
这里,当调用 onChangeText 时,它会更新状态和 refreshPage
的定义,但不会使用我定义的新状态调用 refreshPage
。
我准确地说,这只是一个示例,并且我使用 useEffect 来加载数据。
谢谢!
最佳答案
你想在state
改变并且state
等于1时执行一些操作,你最好在useEffect
而不是中处理它useCallback
并且您根本不需要调用 refreshPage
之类的任何内容
const refreshPage = useCallback(() => {
// load data here
},[]);
useEffect(() => {
if (state == '1'){
refreshPage()
}
},[state]);
const onChangeText = useCallback((state) => {
setState(state);
},[]);
关于react-native - 设置其依赖的状态后,使用usecallback定义的调用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62553667/