我有一个自定义对象数组,在其中存储api响应,并将数据显示到平面列表的UI中。
export type userInfo = {
id: string,
title: string,
email: string,
userAccount: number
};
export type userData = {
page: number,
pageSize: number,
userInformation: userInfo[]
}
export const User: FunctionComponent = () => {
const [search, setSearch] = useState('');
const [userInfo, setUserInfo] = useState<userInfo>();
const [arrayholder, setArrayholder] =useState<userInfo>();
useEffect(() => {
setUserInfo(someState.userInfo);
setArrayholder(someState.userInfo);
}, [someState]);
searchData= (text: any)=> {
const newData = arrayholder?.userData.filter(item => {
const itemData = item.title.toUpperCase();
const textData = text.toUpperCase();
return itemData.indexOf(textData) > -1
});
console.log("newData is", newData) //here throwing error
setUserInfo(newData)
setSearch(text)
}
}
return (
//here showing searchbar
//here showing flatlist showing with userInfo
)
在尝试为userInfo设置新数据时,它显示以下错误,无法在flatlist中显示搜索数据。
Type 'userInfo[]' provides no match for the signature '(prevState: userInfo | undefined): userData | undefined'.ts(2345)
有什么建议吗?
我是新手
打字稿
语言