如题:在将JS函数、对象绑定到上下文中时,需要注意哪些问题(结合示例说明)?
本文参与了 【 HarmonyOS NEXT 技术问答冲榜,等你来战!】欢迎正在阅读的你也加入。
如题:在将JS函数、对象绑定到上下文中时,需要注意哪些问题(结合示例说明)?
本文参与了 【 HarmonyOS NEXT 技术问答冲榜,等你来战!】欢迎正在阅读的你也加入。
1 回答749 阅读✓ 已解决
1 回答1k 阅读
1 回答846 阅读
1 回答819 阅读
1 回答733 阅读
1 回答715 阅读
1 回答669 阅读
将JS函数、对象绑定到上下文中时需注意以下问题:
OH_JSVM_CreateFunction
接口中的const char *
参数为创建函数的属性name
,不代表上下文中指向该函数的函数名。如示例中创建函数时属性name
为"NativeFunction"
,但绑定到上下文时使用"FunctionNameInJSContext"
作为在JS中访问的函数名。OH_JSVM_CreateFunction
),然后获取上下文的global
对象(OH_JSVM_GetGlobal
),接着创建表示函数名的JS字符串(OH_JSVM_CreateStringLatin1
),最后通过OH_JSVM_SetProperty
将函数绑定到上下文中,设置global
对象的属性为创建的JS函数。在示例中详细展示了这些步骤,若绑定错误,如在JS中直接使用NativeFunction()
调用会失败,而使用FunctionNameInJSContext()
可成功调用,且可通过consolelog(FunctionNameInJSContext.name)
打印出函数的属性name
为"NativeFunction"
。本文参与了 【 HarmonyOS NEXT 技术问答冲榜,等你来战!】欢迎正在阅读的你也加入。