我正在尝试在作为react挂钩的功能组件中进行 API 调用,并根据结果重新呈现组件的内容。这是代码:
调用 API 的组件 -
function IntegrationDownshift() {
render(
<Paper square>
{setResults(inputValue).map(
(suggestion, index) =>
renderSuggestion({
suggestion,
index,
itemProps: getItemProps({
item:
suggestion.userFullName
}),
highlightedIndex,
selectedItem
})
)}
</Paper>
);
}
这是setResults
函数:
function setResults(textInput) {
const [data, setData] = useState({ users: [] });
searchUser(textInput).then(result => {
useEffect(() => {
searchUser(textInput).then(result => {
setData(result.users);
});
}, []);
});
}
我正在尝试获取状态数据并根据数据重新渲染我的组件。这searchUser
是调用外部 API 的操作。
- 该
searchUser
呼吁的行动,并成功地获取数据,但我不知道为什么状态得到更新-我得到了下面的错误-
React Hook "useState" 在函数 "setResults" 中调用,它既不是 React 函数组件,也不是自定义 React Hook 函数 react-hooks/rules-of-hooks
- 作为第二个替代方案,我试图从 searchUser 返回值并在下面的函数中访问它,但仍然没有用
我是钩子的新手,任何帮助/指针都会有所帮助。