【发布时间】:2019-05-24 22:58:50
【问题描述】:
我有一个进行 API 调用的反应功能组件。拨打电话时肯定会得到响应。我正在尝试将数组保存到一个状态,以便可以检索它并与其他子组件一起使用。当我在保存响应之前控制台登录响应时,我得到:
console.log(response.data)我得到[{},{}]
我的代码是
const [helpFiles, setHelpFiles] = useState<HelpDTO[]>([]);
useEffect(() => {
helpApi.getHelpFiles().then((response) => {
if (response.status !== 200) return;
console.log(response.data)
setHelpFiles(response.data.data);
});
})
response.data.data 未定义,但如果我尝试保存 response.data 则会引发错误:
Argument of type 'HelpGetResponse' is not assignable to parameter of type 'SetStateAction<HelpDTO[]>'.
Type 'HelpGetResponse' is not assignable to type '(prevState: HelpDTO[]) => HelpDTO[]'.
Type 'HelpGetResponse' provides no match for the signature '(prevState: HelpDTO[]): HelpDTO[]'.
所以我必须将它保存为response.data.data
但是当它保存时它会出现未定义......
我不知道如何正确保存响应...
【问题讨论】:
标签: javascript reactjs typescript react-native