HostObjectsOptions class
包含適用於 CoreWebView2.AddHostObjectToScript
新增文稿 Proxy 的選項。
屬性
default |
在同步 Proxy 上呼叫方法時,結果也應該是同步 Proxy。 但在某些情況下,同步處理或異步內容會遺失 (例如,將函式的參考提供給原生程式代碼,然後在原生程式代碼中呼叫該函式) 。 在這些情況下,如果這個選項是 |
force |
這是正則表達式的陣列。 在同步 Proxy 上呼叫方法時,如果方法名稱符合此數位中的字串或正則表示式,則會以異步方式執行方法呼叫。 將此值設定為 預設為 |
force |
這是將在本機執行的主機對象屬性名稱陣列,而不是在原生主機物件上呼叫。 預設為 |
ignore |
根據預設,嘗試取得對應原生類別上不存在之 Proxy 屬性的值時,會擲回例外狀況。 將此屬性設定為 會 |
log | 這是回呼委派,如果非 Null,則會使用偵錯資訊呼叫。 例如,您可以將此設定為 根據預設,這是 |
should |
根據預設,具類型的陣列會以 傳遞至主機。 |
should |
根據預設,這是 您可以將這個屬性設定為 |
屬性詳細資料
defaultSyncProxy
在同步 Proxy 上呼叫方法時,結果也應該是同步 Proxy。 但在某些情況下,同步處理或異步內容會遺失 (例如,將函式的參考提供給原生程式代碼,然後在原生程式代碼中呼叫該函式) 。 在這些情況下,如果這個選項是 false
,則 Proxy 會是異步的,如果這個選項是 ,則為 true
同步。
defaultSyncProxy: boolean;
屬性值
boolean
forceAsyncMethodMatches
這是正則表達式的陣列。 在同步 Proxy 上呼叫方法時,如果方法名稱符合此數位中的字串或正則表示式,則會以異步方式執行方法呼叫。 將此值設定為 /Async$/
會讓任何以 為結尾 Async
的方法成為異步方法呼叫。 如果異步方法在這裡不相符,而且未強制為異步,則會以同步方式叫用方法,封鎖呼叫 JavaScript 的執行,然後傳回承諾的解析,而不是傳回承諾。
預設為 []
。
forceAsyncMethodMatches: RegExp[];
屬性值
RegExp[]
forceLocalProperties
這是將在本機執行的主機對象屬性名稱陣列,而不是在原生主機物件上呼叫。 預設為 ['then', 'toJSON', Symbol.toString, Symbol.toPrimitive]
。 您可以新增其他屬性,以指定它們應該在 javascript 主機物件 Proxy 本機上執行。
forceLocalProperties: string[];
屬性值
string[]
ignoreMemberNotFoundError
根據預設,嘗試取得對應原生類別上不存在之 Proxy 屬性的值時,會擲回例外狀況。 將此屬性設定為 會 true
變更行為,以符合 Chakra WinRT 投影 (和一般 JavaScript) 傳回 undefined
而不會發生錯誤的行為。
ignoreMemberNotFoundError: boolean;
屬性值
boolean
log
這是回呼委派,如果非 Null,則會使用偵錯資訊呼叫。
例如,您可以將此設定為 console.log.bind(console)
讓它將偵錯資訊列印到主控制台,以在疑難解答主機物件使用方式時提供協助。
根據預設,這是 null
。
log: (...data: any[]) => void;
屬性值
(...data: any[]) => void
shouldPassTypedArraysAsArrays
根據預設,具類型的陣列會以 傳遞至主機。IDispatch
若要改為將具類型的陣列當做 array
傳遞給主機,請將此設定為 true
。
shouldPassTypedArraysAsArrays: boolean;
屬性值
boolean
shouldSerializeDates
根據預設,這是 false
,而且 javascript Date
物件會使用 JSON.stringify
以字串形式傳送至主機物件。
您可以將這個屬性設定為 true
,讓 Date
對象在傳送至原生主機物件時正確地串行化為 VT_DATE
,並讓 VT_DATE
屬性和傳回值建立 JavaScript Date
物件。
shouldSerializeDates: boolean;
屬性值
boolean