繁体   English   中英

ReactJS:如何修复 TypeError:数据不可迭代

[英]ReactJS: How to fix TypeError: data is not iterable

我有两个应用程序同时运行。 第一个是从船舶查找器获取 API 并仅找到特定数量的船只。 第二个应用程序是用于可视化获取数据的用户界面,特别是船只的纬度和经度。

的问题是,取似乎正确地到达终点,但抛出的错误TypeError: data is not iterable亦如这里的终端上。

似乎问题可能出在 API 获取上。 在我为此使用的代码下方:

router.get('/hello', async function(req, res, next) {
    try {
        const { data } = await axios.get(
            'https://api.vesselfinder.com/vesselslist?userkey=KEY'
        );
        const [ metaData, ships ] = data;
        console.log(data);
        res.send(data);
    } catch (error) {
        res.send(error);
        console.log(error);
    }
});

module.exports = router;

在调查问题可能是什么时,我遇到了这个源,它也使用axios来获取对 API 的调用。 我现在想知道我所做的提取是否基本上不完整,因此, data is not iterable ......此外,从这篇文章中,我能够使用阻止我编译的try-catch块处理丢失的Promise

问题是由于缺少axios.get('API call').then.setState指令吗?如果是这样,我该如何解决?

非常感谢您指出解决这个问题的正确方向。

在您的代码中注意这一行 -

 const [ metaData, ships ] = data;

在两个对象之间或两个数组之间执行对象解构。 您正在数组和对象之间进行尝试,这是一个缺陷。 有关更多详细信息,请查看https://javascript.info/destructuring-assignment#object-destructuring

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM