react-native - java.lang.RuntimeException:获取未知参数类:将 JS 数组传递给 java 时的 int[]
问题描述
我正在上 Kotlin 的 RN 课程,但被困在了这个作业上。当我尝试将整数数组从 JS 传递到 Kotlin 时,我收到错误 java.lang.RuntimeException: Got unknown argument class: int[]。
计算器.kt
@ReactMethod
fun getSum(values: IntArray, callback: Callback){
var total = 0;
// get total
callback.invoke( null, total)
}
从 JS 我这样称呼它:
KTFile.getSum([1,2,3],(err,ok)=>{
});
如果我正在使用采用单个整数的方法,它会起作用:
@ReactMethod
fun getSquare(value: Int, callback: Callback){
var sqr = 0;
// get sqr
callback.invoke( null, sqr)
}
KTFile.getSquare(1,(err,ok)=>{
});
如何将 JS 数组传递给 kotlin/java?
解决方案
从 1.1.50 版开始,原始数组转换使用 JavaScript TypedArray。
来自https://kotlinlang.org/docs/reference/js-to-kotlin-interop.html
也许试试这个。
fun getSum(values: Array<Int>, callback: Callback){
var total = 0;
// get total
callback.invoke( null, total)
}
推荐阅读
- python - 一种在循环时比较值的方法?
- python - sqlalchemy,postgres,码头工人
- algorithm - GAMS if-else 语法
- swift - 无法读取数据,因为它的格式不正确。如何解决 init Swift Class 错误?
- android - 如何为纯 kotlin 子模块生成 dokka?
- c# - DbEntityEntry.Member("JoinTable").CurrentValue 返回对象时如何访问属性值?
- excel - Google 表格是否具有与 Excel 中的 WEBSERVICE 和 FILTERXML 等效的功能?
- python - 海运 | Matplotlib:散点图:第三个变量由大小和颜色编码
- firebase - Flutter Cloud_Firestore 搜索查询
- python - Django rest + React 前端