我正在尝试从ReactMethod
调用原生react native
,但它会抛出以下错误:
'NativeModules'中的C ++异常:java.lang.RuntimeException:得到未知的参数类:Object
这就是我在android中定义方法的方法:
@ReactMethod
public void setItem(String key, Object value) {
// code
}
这就是我称之为这种方法的方式:
MyModule.setItem("mykey", "1234567890");
我想知道ReactMethod
是否支持对象类型作为参数?因为我想设置任何类型的项目。
答案 0 :(得分:6)
根据documentation,使用 @ReactMethod 注释的方法支持以下参数类型。参数类型直接映射到它们的JavaScript等价物。
Boolean -> Bool
Integer -> Number
Double -> Number
Float -> Number
String -> String
Callback -> function
ReadableMap -> Object
ReadableArray -> Array
在您的情况下,您可以使用 ReadableMap 作为参数,该参数映射在JavaScript Object 类型上。
答案 1 :(得分:0)
您可以使用Dynamic类型,但实际上没有记录。