HostObjectAsyncProxy class
异步主机对象代理。 通过 CoreWebView2.AddHostObjectToScript
添加的主机对象使用 window.chrome.webview.hostObjects.{name}
作为主机对象代理公开。 主机对象代理是承诺,解析为表示主机对象的 对象。 如果应用未添加名称为 的对象,则拒绝承诺。 当 JavaScript 代码访问 对象的属性或方法时,将返回 promise。 promise 解析为从属性或方法的主机返回的值。 如果出现错误,则拒绝承诺;例如,对象或参数上没有任何属性或方法无效。
主机对象代理是 JavaScript 代理对象,可截获所有属性 get
、属性 set
和方法调用。 属于 或 原型的属性 Function
或 Object
方法在当前文档的 JavaScript 引擎中运行。 此外,数组中的任何 chrome.webview.hostObjects.options.forceLocalProperties
属性或方法也会在当前文档的 JavaScript 引擎中运行。 这默认包括在 JavaScript 中具有含义的可选方法,例如 toJSON
和 Symbol.toPrimitive
。 根据需要向数组添加更多内容。
- 扩展
方法
sync() | 一个方法,该方法返回同一主机对象的同步主机对象代理的 promise。 例如, |
方法详细信息
sync()
一个方法,该方法返回同一主机对象的同步主机对象代理的 promise。 例如, chrome.webview.hostObjects.sample.methodCall()
返回异步主机对象代理。
sync
改用 方法获取同步主机对象代理:const syncProxy = await chrome.webview.hostObjects.sample.methodCall().sync()
。
sync(): Promise<HostObjectSyncProxy>;
返回
Promise<HostObjectSyncProxy>
表示同步主机对象代理的承诺。