ohos-rs / example

A set of exmaples with napi-rs for HarmonyOS
MIT License
4 stars 1 forks source link

Any JsFunction Example? #1

Closed nickming closed 6 months ago

nickming commented 6 months ago

Any JsFunction Example?

richerfu commented 6 months ago

I'm not sure if you want code like the hello example. If not, can you provide some scenarios?

nickming commented 6 months ago

主要是想请教关于js_function宏的使用方法,我看demo中没有export的ts函数声明文件,导致无法匹配上类型;同时想请教create_threadsafe_function的用法,目前测试下来返回的都是null 目前是在api10和模拟器上跑的

richerfu commented 6 months ago
  1. js_function宏 可以参考这个 示例
  2. 类型生成是在构建阶段做的,现在还在开发中。预计月底新的脚手架会支持,可以新提一个Issue跟进
  3. tsfn 示例
richerfu commented 6 months ago

其他问题 可以新提Issue 这个先关闭了

nickming commented 6 months ago
  1. js_function宏 可以参考这个 示例
  2. 类型生成是在构建阶段做的,现在还在开发中。预计月底新的脚手架会支持,可以新提一个Issue跟进
  3. tsfn 示例

根据最新的demo测试,tsfn回调的值一直是null,这个请问你那边有出现吗

richerfu commented 6 months ago
  1. js_function宏 可以参考这个 示例
  2. 类型生成是在构建阶段做的,现在还在开发中。预计月底新的脚手架会支持,可以新提一个Issue跟进
  3. tsfn 示例

根据最新的demo测试,tsfn回调的值一直是null,这个请问你那边有出现吗

应该是镜像问题,跟napi_typeof有点类似 我确认下。

nickming commented 6 months ago
  1. js_function宏 可以参考这个 示例
  2. 类型生成是在构建阶段做的,现在还在开发中。预计月底新的脚手架会支持,可以新提一个Issue跟进
  3. tsfn 示例

根据最新的demo测试,tsfn回调的值一直是null,这个请问你那边有出现吗

应该是镜像问题,跟napi_typeof有点类似 我确认下。

期待大佬解决,补充完这个case,全流程看起来就没啥问题了

richerfu commented 6 months ago

参考 https://github.com/ohos-rs/example/blob/main/ohos_rs_example/entry/src/main/ets/pages/Tsfn.ets#L16 参数必须使用剩余参数表达式接受,不支持一个个变量直接接受。会被方舟编译器优化掉。 @nickming

nickming commented 6 months ago

看起来都没问题了,强

richerfu commented 6 months ago

另外注意下 使用的方法。如果是带错误的,第一个参数就是err 无报错就是null