Alf*_*x92 5 typescript reactjs react-hooks usecallback
我正在尝试使用 Typescript 和 useCallback,但出现此错误
Expected 0 arguments, but got 1
这是我的代码
const searchFriends = useCallback(() => (filterValue: string): void => {
if (dataState.length <= INITIAL_FRIENDS_API_REQUEST) fetchAllFriends()
const filterValueInsensitive = filterValue.toLowerCase()
const filtered = dataState.filter((friend: Friends) => {
return friend.displayName?.toLowerCase().includes(filterValueInsensitive)
})
setFriendsDisplayState(filtered)
}, [dataState,fetchAllFriends])
const handleChangeSearchInput = (
e: React.ChangeEvent<HTMLInputElement>
): void => searchFriends(e.currentTarget.value) // ERROR here "Expected 0 arguments, but got 1"
Run Code Online (Sandbox Code Playgroud)
知道如何修复它吗?
您正在使用useCallback类似的语法useMemo's。它不需要柯里化函数。正确的写法就像
const searchFriends = useCallback((filterValue: string): void => {
if (dataState.length <= INITIAL_FRIENDS_API_REQUEST) fetchAllFriends()
const filterValueInsensitive = filterValue.toLowerCase()
const filtered = dataState.filter((friend: Friends) => {
return friend.displayName?.toLowerCase().includes(filterValueInsensitive)
})
setFriendsDisplayState(filtered)
}, [dataState,fetchAllFriends])
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10826 次 |
| 最近记录: |