2020-04-27 React Native 报错 got u

2020-04-29  本文已影响0人  KingAmo

背景

在进行 React NativeAndroid 原生模块开发的时候,报错:got unknown argument class: long,什么原因呢?
根据官方文档 argument-typesJavaJavaScript的数据类型的对应关系如下:

Boolean -> Bool
Integer -> Number
Double -> Number
Float -> Number
String -> String
Callback -> function
ReadableMap -> Object
ReadableArray -> Array

可以看到,这里是没有Long型数据的对应关系的,查看源码,可以看到确实没有JavaLong型数据的对应关系,RN调用参数类型为Long型的原生方法时,会报错Got unknown argument class: Long,React Native的Github库下也有相应的 issue


解决方案

在定义Android原生模块的参数时,不要使用Long型数据,而是使用Double类型的,需要时可以强转成Long型的
或者使用String型的数据,然后ParseLong型的。

上一篇 下一篇

猜你喜欢

热点阅读