Freigeben über


HostObjectsOptions class

Enthält Optionen, die auf CoreWebView2.AddHostObjectToScript hinzugefügte Skriptproxys anwendbar sind.

Eigenschaften

defaultSyncProxy

Beim Aufrufen einer Methode für einen synchronen Proxy sollte das Ergebnis ebenfalls ein synchroner Proxy sein. In einigen Fällen geht der Synchronisierungs- oder asynchrone Kontext jedoch verloren (z. B. wenn für nativen Code ein Verweis auf eine Funktion bereitgestellt und diese Funktion dann im nativen Code aufgerufen wird). In diesen Fällen ist der Proxy asynchron, wenn diese Option istfalse, und synchron, wenn diese Option isttrue.

forceAsyncMethodMatches

Dies ist ein Array von regulären Ausdrücken. Beim Aufrufen einer Methode für einen synchronen Proxy wird der Methodenaufruf asynchron ausgeführt, wenn der Methodenname mit einer Zeichenfolge oder einem regulären Ausdruck in diesem Array übereinstimmt. Wenn Sie diesen Wert auf festlegen /Async$/ , wird jede Methode, die mit Async endet, zu einem asynchronen Methodenaufruf. Wenn eine asynchrone Methode hier nicht übereinstimmt und nicht gezwungen wird, asynchron zu sein, wird die Methode synchron aufgerufen, wodurch die Ausführung des aufrufenden JavaScript blockiert und dann die Auflösung der Zusage zurückgegeben wird, anstatt eine Zusage zurückzugeben.

Dies ist standardmäßig auf []festgelegt.

forceLocalProperties

Dies ist ein Array von Hostobjekteigenschaftennamen, die lokal ausgeführt werden, anstatt für das native Hostobjekt aufgerufen zu werden. Dies ist standardmäßig auf ['then', 'toJSON', Symbol.toString, Symbol.toPrimitive]festgelegt. Sie können weitere Eigenschaften hinzufügen, um anzugeben, dass sie lokal auf dem Javascript-Hostobjektproxy ausgeführt werden sollen.

ignoreMemberNotFoundError

Standardmäßig wird eine Ausnahme ausgelöst, wenn versucht wird, den Wert einer Proxyeigenschaft abzurufen, die in der entsprechenden nativen Klasse nicht vorhanden ist. Wenn Sie diese Eigenschaft auf true festlegen, wird das Verhalten so geändert, dass es dem Chakra WinRT-Projektionsverhalten (und dem allgemeinen JavaScript-Verhalten) der Rückgabe undefined ohne Fehler entspricht.

log

Dies ist ein Rückrufdelegat, der mit Debuginformationen aufgerufen wird, wenn nicht NULL.

Sie können dies beispielsweise auf console.log.bind(console) festlegen, damit Debuginformationen in der Konsole ausgegeben werden, um bei der Problembehandlung bei der Verwendung von Hostobjekten zu helfen.

Standardmäßig ist nulldies .

shouldPassTypedArraysAsArrays

Typisierte Arrays werden standardmäßig als IDispatchan den Host übergeben. Um typisierte Arrays stattdessen als arrayan den Host zu übergeben, legen Sie dies auf fest true.

shouldSerializeDates

Standardmäßig ist falsedies , und javascript-Objekte Date werden mithilfe von JSON.stringifyals Zeichenfolge an Hostobjekte gesendet.

Sie können diese Eigenschaft auf true festlegen, damit Date Objekte beim Senden an das native Hostobjekt ordnungsgemäß als VT_DATE serialisiert werden und dass VT_DATE Eigenschaften und Rückgabewerte ein JavaScript-Objekt Date erstellen.

Details zur Eigenschaft

defaultSyncProxy

Beim Aufrufen einer Methode für einen synchronen Proxy sollte das Ergebnis ebenfalls ein synchroner Proxy sein. In einigen Fällen geht der Synchronisierungs- oder asynchrone Kontext jedoch verloren (z. B. wenn für nativen Code ein Verweis auf eine Funktion bereitgestellt und diese Funktion dann im nativen Code aufgerufen wird). In diesen Fällen ist der Proxy asynchron, wenn diese Option istfalse, und synchron, wenn diese Option isttrue.

defaultSyncProxy: boolean;

Eigenschaftswert

boolean

forceAsyncMethodMatches

Dies ist ein Array von regulären Ausdrücken. Beim Aufrufen einer Methode für einen synchronen Proxy wird der Methodenaufruf asynchron ausgeführt, wenn der Methodenname mit einer Zeichenfolge oder einem regulären Ausdruck in diesem Array übereinstimmt. Wenn Sie diesen Wert auf festlegen /Async$/ , wird jede Methode, die mit Async endet, zu einem asynchronen Methodenaufruf. Wenn eine asynchrone Methode hier nicht übereinstimmt und nicht gezwungen wird, asynchron zu sein, wird die Methode synchron aufgerufen, wodurch die Ausführung des aufrufenden JavaScript blockiert und dann die Auflösung der Zusage zurückgegeben wird, anstatt eine Zusage zurückzugeben.

Dies ist standardmäßig auf []festgelegt.

forceAsyncMethodMatches: RegExp[];

Eigenschaftswert

RegExp[]

forceLocalProperties

Dies ist ein Array von Hostobjekteigenschaftennamen, die lokal ausgeführt werden, anstatt für das native Hostobjekt aufgerufen zu werden. Dies ist standardmäßig auf ['then', 'toJSON', Symbol.toString, Symbol.toPrimitive]festgelegt. Sie können weitere Eigenschaften hinzufügen, um anzugeben, dass sie lokal auf dem Javascript-Hostobjektproxy ausgeführt werden sollen.

forceLocalProperties: string[];

Eigenschaftswert

string[]

ignoreMemberNotFoundError

Standardmäßig wird eine Ausnahme ausgelöst, wenn versucht wird, den Wert einer Proxyeigenschaft abzurufen, die in der entsprechenden nativen Klasse nicht vorhanden ist. Wenn Sie diese Eigenschaft auf true festlegen, wird das Verhalten so geändert, dass es dem Chakra WinRT-Projektionsverhalten (und dem allgemeinen JavaScript-Verhalten) der Rückgabe undefined ohne Fehler entspricht.

ignoreMemberNotFoundError: boolean;

Eigenschaftswert

boolean

log

Dies ist ein Rückrufdelegat, der mit Debuginformationen aufgerufen wird, wenn nicht NULL.

Sie können dies beispielsweise auf console.log.bind(console) festlegen, damit Debuginformationen in der Konsole ausgegeben werden, um bei der Problembehandlung bei der Verwendung von Hostobjekten zu helfen.

Standardmäßig ist nulldies .

log: (...data: any[]) => void;

Eigenschaftswert

(...data: any[]) => void

shouldPassTypedArraysAsArrays

Typisierte Arrays werden standardmäßig als IDispatchan den Host übergeben. Um typisierte Arrays stattdessen als arrayan den Host zu übergeben, legen Sie dies auf fest true.

shouldPassTypedArraysAsArrays: boolean;

Eigenschaftswert

boolean

shouldSerializeDates

Standardmäßig ist falsedies , und javascript-Objekte Date werden mithilfe von JSON.stringifyals Zeichenfolge an Hostobjekte gesendet.

Sie können diese Eigenschaft auf true festlegen, damit Date Objekte beim Senden an das native Hostobjekt ordnungsgemäß als VT_DATE serialisiert werden und dass VT_DATE Eigenschaften und Rückgabewerte ein JavaScript-Objekt Date erstellen.

shouldSerializeDates: boolean;

Eigenschaftswert

boolean