当前位置: 首页 > 知识库问答 >
问题:

java - React Native中WritableArray添加WritableMap会报错?

岑经纶
2023-08-04


WritableArrayprintData定义如下

WritableNativeArray printData = new WritableNativeArray();

为什么获取WritableArray的printData.size()为0呢?
而且printData.pushMap(perPrintMap)会报错如下

Method threw 'com.facebook.react.bridge.ObjectAlreadyConsumedException' exception. Cannot evaluate com.facebook.react.bridge.WritableNativeMap.toString()

共有1个答案

蒋永宁
2023-08-04

你这个问题可能是多次消费同一个WritableMap或者WritableArray的时候出现的:应该每次新建新的WritableMap或者WritableArray:

WritableMap map1 = new WritableNativeMap();map1.putString("key", "value");WritableMap map2 = new WritableNativeMap();map2.putString("key", "value");WritableArray array = new WritableNativeArray();array.pushMap(map1); // 这里map1被"消费"array.pushMap(map2); // 这里map2被"消费"

printData.size()为0的问题,我猜可能是因为你在给printData添加数据之前就调用了size()方法。你应该在添加数据之后再检查它的大小。

 类似资料:
  • 新建一个React Native工程,参考React Native 官网 react-native init hello cd hello yarn add baidumobstat-react-native react-native link 进入新建的目录,打开ios目录下的hello.xcodeproj工程,在iOS工程的Linked Frameworks and Libr

  • 目前,我正在使用JasperReports和DynamicJasper构建我的报告并打印它们。当我只使用单个jasper-files或jrxml-files时,所有的工作都很好。我还有一段代码,如果需要合并报表,它可以将所有JasperPrint-files合并为一个。然而,这并不是最理想的... 我可以使用一个.jasper或.jrxml文件作为主报表(它有一个页眉、一个页脚和n个空的详细信息带

  • 我正在尝试添加一个表单内的多种颜色的选项。问题是,即使在添加了一个在第一个颜色字段下面添加一个新字段的按钮之后,后续字段也不会保存在jQuery调用和PHP控制器上的dd()中。 供参考 以下是点击submit后我得到的信息。

  • 问题内容: 我不确定导致该问题的原因,但是现在在IntelliJ中添加新文件或程序包不会将它们添加到Subversion中,而我必须通过右键单击-> subverion-> add手动添加它们。 是否有设置可以控制这种行为? 问题答案: 转到 文件- >设置->版本控制->确认->创建文件时,您可能正在寻找“ 静默添加 ”。 注意:在IntelliJ 6或更早版本中,这是通过 文件- >设置->版

  • 使用 react native 和 socket.io 开发的模仿微信聊天的 app,后台使用 node 和 moogodb,目前还在开发中。 已完成的功能 登录 注册 通讯录 两人文字聊天 下拉获取聊天历史记录 未读消息提示 正在开发的功能 朋友圈 多人聊天 用户管理 系统设置 语音聊天 发送图片 效果展示     

  • 我有一个要转换成CSV格式的XML。我使用Jasper Reports来转换它,并使用Jasper Studio来设计JRXML。 这是XML: 我希望CSV格式包含以下列: fields_exitence分为3个(nonMap、ux和两者),属性在