2
custom_bridge

yutent edited this page 2023-09-06 15:28:37 +08:00

内置的JS API不满足需求时, 可自定义桥接信号处理

from webengine.gtk3 import WebEngine,  create_bridge

web = WebEngine()
bridge = create_bridge() # 无需任何额外参数

def bridge_handler(event, params):
  # event 为前端 js 触发的事件名, 这里可根据不同事件名做不同的处理
  # params 为一个 dict 字典对象, 是前端 js 传递给后端的参数
  error = None
  output = None
  # ...
  return (error, output)  # 这里必须有返回值, 且须为一个集合,  第1元素为错误信息,  当不为None时, 前端 js的调用结果, 会触发 Promise.reject() 

web.use(bridge, bridge_handler) 
web.load()