3

请原谅我不知道我是否应该在一篇文章中或单独询问所有基本类型。

主要问题:

  1. 如何将一组浮点数从 Kotlin 传递给 JS?
  2. 其他“简单”类型呢?像一个浮点数,字符串?
  3. 其他类型setmap甚至数据类呢?

我在 Kotlin 主文件的末尾有这个

@SymbolName("callback")
external fun cb(<......>)

如果cb()定义中的类型与我从 传递的内容相匹配main(),例如Int,Float那么cb()从浏览器将获得正确的值。

如果我使用Any,那么我将得到的只是一个整数(我猜应该是指向内存的指针)。

我试图检查heap但无济于事如何检索我cb()通过 Kotlin 传递给的 int、float 和字符串。

对于数组,我注意到jsinteropJsArray包中有,但我找不到关于如何使用它的好的参考资料。

我注意到的一件事是我可以通过 Arenas 获得一个整数数组:

    val arena = allocateArena()
    pushIntToArena(arena, 1)
    pushIntToArena(arena, 12)

然后我将通过konan_dependencies.env.arenas.

但是,我如何获得一组浮点数?请指教。

PS 我正在使用konan我的插件build.gradle来编译到 Wasm32。我通过将函数添加到in来传递callback给 Wasm :window.konan.librariesmodule.wasm.js

    var konan = {
      libraries: [
        { "callback": function(msg) { console.trace(msg); } }
      ],
    }

4

0 回答 0