2016-12-15 1 views
2

Я пытаюсь позвонить родным ReactMethod из react native но бросает следующее сообщение об ошибке:Исключение в «NativeModules»: java.lang.RuntimeException: Got неизвестного класса аргумента: Object

C++ Exception in 'NativeModules': java.lang.RuntimeException: Got unknown argument class: Object

Это, как я есть метод определен в андроиде:

@ReactMethod 
public void setItem(String key, Object value) { 
    // code 
} 

Это, как я зову этот метод:

MyModule.setItem("mykey", "1234567890"); 

Интересно, поддерживает ли ReactMethod тип объекта в качестве параметра или нет? Потому что я хочу установить любой тип элемента.

ответ

5

В соответствии с documentation поддерживаются следующие типы аргументов для методов, аннотированных с помощью @ReactMethod. Типы аргументов напрямую сопоставляются с их эквивалентами JavaScript.

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

В вашем случае вы можете использовать ReadableMap в качестве аргумента, который отображает на JavaScript объектов типа.

Смежные вопросы