仅在Android Pie上出现“ .map不是函数”错误?

布莱恩

我们.map在React-Native(0.59.3版)项目中遇到一个相当奇怪的现象: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响应中获取的数据集的数组,另一个是从设备上的本地DB获取书签的数据集的列表。我们将地图功能应用于API响应数组,并检查收藏夹数据库中是否存在数据集中的某个项目。基于此,我们更改图标的颜色。根据我们的测试人员所说,他确实也可以访问Internet,但是无论如何我们都监控@react-native-community/netinfo2.0.0版。

相关问题

巴尔加夫·沙阿

如果o不是数组,只会发生这种情况您可以使用以下命令检查是否o为数组

Array.isArray(o);

关于这个的更多细节在这里可以肯定地排除这是Android 9特定问题的可能性。我有一个Android 9设备,已经测试map了无数次。如果您只能在Android 9上始终如一地重现,则在它上运行时可能还会有其他作用。我建议您在上面运行^之前使用上述方法检查数组是否存在map

其他选项:

  1. 如果您需要更改数组中某些元素的图标颜色,而只需要这些元素,则可以将.find()if用于单个元素和.filter()多个元素。
  2. 如果您需要整个数组作为响应,替代.map()将是.forEach()for of循环。

如果您可以使用自己的确切代码更新问题(即使在桌面浏览器中无法重现),也乐意用更具体的答案来更新问题

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

仅在Android上查询时出现SQL逻辑错误

删除帖子时出现“ posts.map不是函数”错误

不断出现类型错误:guide.map 不是函数

Google Map上的突然错误:TypeError:_.x不是函数

Android TextView的textColor仅在物理设备上是错误的

android应用仅在真实设备上引发错误

RxJS出现“不是函数”错误

出现错误“addEventListener 不是函数”

仅在某些分支机构上出现Mercurial错误10061

链接C但仅在MinGW上出现“多个定义”错误

仅在GET请求上出现Alamofire请求错误

为什么仅在CircieCI上出现webpacker错误?

C ++:printf中间出现分段错误,但仅在Ubuntu上

错误:在 React Native 中使用 axios 的网络错误,仅在 iOS 和 Android 中出现

运行ng test时出现错误this.httpClient.get(...)。map不是函数

仅在日食中出现此错误“不是结构或联合”

Cordova JS仅在特定设备上在Android上返回错误的日期时间和UTC

React Typescript .map 不是类型化数组上的函数错误

Android:无法获取正确的Google Map仅在设备上获取地图图标

Android App仅在Android 6上崩溃

Android应用错误:未找到Kotlin类,但仅在Release apk上

错误:.map()不是函数

使用AngularJS时出现“ .then()不是函数”错误

MOO工具出现类型错误-“不是函数”

出现错误.split(“”)。reverse()不是函数

出现“ oModel.read不是函数”错误

为什么会出现“不是函数”错误?

调用函数时出现“不是'subtype'错误”

map不是数组React上的函数