首页 > 解决方案 > 仅在 Android Pie 上出现“.map 不是函数”错误?

问题描述

我们在 React-Native(0.59.3 版)项目中遇到了一个相当奇怪的现象.map:APK 在各种物理设备或模拟器上运行良好,但在 Android 9.0 版上却没有,它崩溃了

TypeError: o.map is not a function. 
(In 'o.map(function(t,n){n.icon_color=A.white,
-1!==s.findIndex(function(n){return t.title==n.title})
&&(t.icon_color=A.red)})','o.map' is undefined)

这是错误弹出窗口的样子:

弹出

我们知道,如果我们应用的变量.map不是数组,则会出现此消息,但我们确实确保它是(并且无论如何它适用于各种其他版本和设备)。我们在这里缺少什么?

一些好奇的背景

我们有两个数组,一个是我们从 API 响应中获得的数据集数组,另一个是设备上本地数据库中的书签数据集列表。我们在 API 响应数组上应用地图功能,并检查数据集中的某个项目是否存在于收藏夹数据库中。基于此,我们改变图标的​​颜色。根据我们的测试员的说法,他确实也可以访问互联网,但我们无论如何监控的是@react-native-community/netinfo2.0.0 版本。

相关问题

标签: reactjsreact-native

解决方案


正如其他人所说,o它不是一个可迭代的对象。

您需要检查堆栈中更高的问题。如果o应该是 API 调用返回的数组,那么很可能 API 调用失败,或者其响应的解析失败。


推荐阅读