pywebview中js_api回调错误的解决尝试

时启发 2024-07-04 17:38:35

本想将基于pywebview的自定义js_api类,与窗体实例保存在一起时,总是产生这样的错误:

webview.errors.WebViewException: Main window failed to start

导致错误的代码如下图所示:

图1 将导致pywebview产生错误的代码

错误的现象可以描述为经历过一段时间的假死之后,然后报错webview.errors.WebViewException: Main window failed to start。而且提示pywebview.api.log并不是一个函数。

将Api类中的main_win去掉之后,就正常了。

图2 改写后的test.py

改写内容为第6、19、21行。运行时再无假死和错误爆出。

my.test网站的index.html的代码如下:

图3 测试网页的代码

运行test.py之后,控制台的结果显示为:

图4 控制台的结果显示

图5 客户端的显示

想来应该是pywebview在注入客户端代码时,由于Api类中存在pywebview的窗体对象,可能原因是,导致了处理上死循环,使得Api的方法不能注入到客户端窗体的pywebview对象中。

0 阅读:2

时启发

简介:读书笔记,编程经验,旅途见闻,人生感悟