react native中无法将readablearray放入map的解决方法
在react native中,使用readablearray向android传递参数时,如果直接将其放入writablemap中会产生“null illegal type provided”错误。这是因为writablemap仅支持存放特定类型的对象,而readablearray不在其中。
要解决此问题,可以将readablearray转换为writablearray,然后将其放入writablemap中。以下是一些可用的转换方法:
通用的转换方法:
private static writablemap convertmap(readablemap map) { writablemap temp = arguments.createmap(); temp.merge(map); return temp; } private static writablearray convertarray(readablearray array) { writablearray temp = arguments.createarray(); for (int i = 0; i < array.size(); i++) { readabletype type = array.gettype(i); switch (type) { case null: temp.pushnull(); break; case boolean: temp.pushboolean(array.getboolean(i)); break; case number: temp.pushdouble(array.getdouble(i)); break; case string: temp.pushstring(array.getstring(i)); break; case array: temp.pusharray(convertarray(array.getarray(i))); break; case map: temp.pushmap(convertmap(array.getmap(i))); break; default: throw new exception("illegal type provided"); } } return temp; }
登录后复制
写入步骤:
将readablearray转换为writablearray后,可以使用以下方法将其放入writablemap中:
map.putArray("key", convertArray(params));
登录后复制
通过这些步骤,即可将readablearray安全地放入writablemap中,从而解决错误。
以上就是React Native中ReadableArray无法放入Map?如何解决“null illegal type provided”错误?的详细内容,更多请关注抖狐科技其它相关文章!
-
铃兰之剑为这和平的世界麦莎玩法分析
麦莎强度解析:值得培养吗?《铃兰之剑为这和平的世界》中,麦莎作为一名强力角色,引起了玩家的关注。那么,麦莎在当前版本中是否值得培养呢?php小编西瓜将通过对麦莎强度的分析,为大家揭晓答案。本文将深入探...
-
系统重装开机按什么键
电脑系统重装时,需要按f2、f10、f12、del或esc键进入bios或uefi界面,选择u盘或光盘作为启动设备,才能开始系统重装过程。电脑系统重装,开机时按什么键? 电脑系统重装时,需要按以下键进...
-
华为手机定时开启免打扰怎么操作
在快节奏的现代生活中,专注于工作或享受休闲时光变得尤为重要。华为手机的定时免打扰功能可以帮助我们屏蔽外界干扰,专注于当前事务。为了帮助华为手机用户充分利用这一便利功能,php小编香蕉特别整理了这篇详细...
-
神脑洞游戏142 神脑洞游戏142通关攻略
各位脑洞大开的大神们,你们在《神脑洞》游戏中被第142关难住了吗?别着急,php小编百草马上来解救你们啦!这一关题目是:【一个数去掉首位是12,去掉末位是40,请问这个数是几】,是不是感觉数学题在向你...
-
电脑蓝屏0x0000008e解决步骤教程
电脑出现蓝屏错误 0x0000008e 的解决步骤包括:1) 检查 ram 和硬盘;2) 更新驱动程序;3) 运行系统文件检查器;4) 检查恶意软件;5) 系统还原;6) 重装操作系统。电脑蓝屏 0x...