共用方式為


HostObjectAsyncProxy class

異步主機物件 Proxy。 透過 CoreWebView2.AddHostObjectToScript 新增的主機物件會使用 window.chrome.webview.hostObjects.{name}公開為主物件 Proxy。 主機物件 Proxy 是 promise,並解析為代表主對象的物件。 如果應用程式尚未新增具有名稱的物件,則承諾會遭到拒絕。 當 JavaScript 程式代碼存取 物件的屬性或方法時,會傳回承諾。 承諾會解析為屬性或方法從主機傳回的值。 發生錯誤時,承諾會遭到拒絕;例如,對象或參數上沒有任何屬性或方法無效。

主機物件 Proxy 是 JavaScript Proxy 物件,可攔截所有屬性、屬性getset和方法調用。 屬於或 原型一部分的 Function 屬性或 Object 方法會在目前檔的 JavaScript 引擎中執行。 此外, chrome.webview.hostObjects.options.forceLocalProperties 陣列中的任何屬性或方法也會在目前檔的 JavaScript 引擎中執行。 這預設為包含在 JavaScript 中具有意義的選擇性方法,例如 toJSONSymbol.toPrimitive。 視需要將更多新增至陣列。

Extends

方法

sync()

方法,傳回相同主機物件之同步主機物件 Proxy 的承諾。 例如, 會 chrome.webview.hostObjects.sample.methodCall() 傳回異步主機物件 Proxy。 sync請改用 方法來取得同步主機物件 Proxy:const syncProxy = await chrome.webview.hostObjects.sample.methodCall().sync()

方法詳細資料

sync()

方法,傳回相同主機物件之同步主機物件 Proxy 的承諾。 例如, 會 chrome.webview.hostObjects.sample.methodCall() 傳回異步主機物件 Proxy。 sync請改用 方法來取得同步主機物件 Proxy:const syncProxy = await chrome.webview.hostObjects.sample.methodCall().sync()

sync(): Promise<HostObjectSyncProxy>;

傳回

代表同步主機物件 Proxy 的承諾。