从 Python 调用 Javascript
window.evaluate_js(code)
允许您执行任意 Javascript 代码。结果同步返回。将 null
, NaN
和 undefined
转换为 None
。
从 Javascript 调用 Python
从 JavaScript 调用 Python 函数可以用两种不同的方法来完成:
- 通过将 Python 类的实例暴露给
create_window
的js_api
。该类的所有可调用方法都将以pywebview.api.method_name
的形式显示在JS
域中,并带有正确的参数签名。方法名称不能以下划线开头。看一个example。 - 通过将您的函数传递给窗口对象的
expose(func)
。 这会将一个或多个函数作为pywebview.api.func_name
公开给 JS 域。与 JS API 不同,expose
允许在运行时也暴露函数。如果 JS API 和以这种方式公开的函数之间存在名称冲突,则以后者为准。 看example.
暴露函数返回一个 promise,该 promise 被解析为其结果值。异常被拒绝并封装在 JavaScript 的 Error
对象中。Stacktrace可通过 error.stack
获得。函数在单独的线程中执行,并且不是线程安全的。
不能保证 window.pywebview.api
在 window.onload
上可用。订阅 window.pywebviewready
而不是确保 window.pywebview.api
已经准备好。见 Example。
网友评论