HostObjectAsyncProxyBase class

非同期ホスト オブジェクト プロキシ。 CoreWebView2.AddHostObjectToScript経由で追加されたホスト オブジェクトは、window.chrome.webview.hostObjects.{name}を使用してホスト オブジェクト プロキシとして公開されます。 ホスト オブジェクト プロキシは promise であり、ホスト オブジェクトを表すオブジェクトに解決されます。 アプリが名前を持つオブジェクトを追加していない場合、promise は拒否されます。 JavaScript コードが オブジェクトのプロパティまたはメソッドにアクセスすると、promise が返されます。 promise は、プロパティまたはメソッドのホストから返される値に解決されます。 エラーが発生した場合、promise は拒否されます。たとえば、オブジェクトのプロパティまたはメソッドがない場合、またはパラメーターが無効です。

ホスト オブジェクト プロキシは、すべてのプロパティ get、プロパティ set、メソッド呼び出しをインターセプトする JavaScript プロキシ オブジェクトです。 FunctionまたはObject プロトタイプの一部であるプロパティまたはメソッドは、現在のドキュメントの JavaScript エンジンで実行されます。 さらに、 chrome.webview.hostObjects.options.forceLocalProperties 配列内のプロパティまたはメソッドは、現在のドキュメントの JavaScript エンジンでも実行されます。 既定では、 toJSONSymbol.toPrimitiveなどの JavaScript で意味を持つ省略可能なメソッドが含まれます。 必要に応じて配列にさらにを追加します。

Extends

メソッド

applyHostFunction(argArray)

このプロキシに対応するホスト オブジェクトに対してメソッド呼び出しを実行します。

すべてのパラメーターは、ホスト オブジェクト メソッドを呼び出すために変換されます。

getHostProperty(propertyName)

ホスト オブジェクトに対してプロパティ get を実行します。 このメソッドを使用して、競合するローカル メソッドまたはプロパティが存在する場合に、プロパティの取得を明示的にリモートで強制的に実行します。 たとえば、 proxy.toString() は、プロキシ オブジェクトに対してローカル toString メソッドを実行します。 ただし、代わりに、proxy.applyHostFunction('toString') はホスト プロキシオブジェクトで toString を実行します。

getLocalProperty(propertyName)

プロキシ オブジェクト get ローカルでプロパティを実行します。 メソッドを使用して、表すホスト オブジェクトではなく、ホスト オブジェクト プロキシでプロパティを強制的に取得します。 たとえば、 proxy.unknownProperty は、ホスト プロキシオブジェクトから unknownProperty という名前のプロパティを取得します。 ただし、 proxy.getLocalProperty('unknownProperty') はプロキシ オブジェクトに unknownProperty プロパティの値を取得します。

setHostProperty(propertyName, propertyValue)

ホスト オブジェクトに対してプロパティ set を実行します。 このメソッドを使用して、競合するローカル メソッドまたはプロパティが存在する場合に、プロパティ set を明示的に強制的にリモートで実行します。

setLocalProperty(propertyName, propertyValue)

プロキシ オブジェクト set ローカルでプロパティを実行します。 メソッドを使用して、表すホスト オブジェクトではなく、ホスト オブジェクト プロキシにプロパティを強制的に設定します。 たとえば、 proxy.unknownProperty = 2 は、ホスト プロキシ オブジェクトの unknownProperty という名前のプロパティを設定します。 ただし、 proxy.setLocalProperty('unknownProperty', 2) プロキシ オブジェクトに unknownProperty プロパティの値を設定します。

メソッドの詳細

applyHostFunction(argArray)

このプロキシに対応するホスト オブジェクトに対してメソッド呼び出しを実行します。

すべてのパラメーターは、ホスト オブジェクト メソッドを呼び出すために変換されます。

applyHostFunction(argArray?: any): Promise<any>;

パラメーター

argArray

any

ホスト オブジェクト メソッドの呼び出しに渡す引数の配列。

戻り値

Promise<any>

ホスト オブジェクト メソッド呼び出しの戻り値の変換された値を表す promise。

getHostProperty(propertyName)

ホスト オブジェクトに対してプロパティ get を実行します。 このメソッドを使用して、競合するローカル メソッドまたはプロパティが存在する場合に、プロパティの取得を明示的にリモートで強制的に実行します。 たとえば、 proxy.toString() は、プロキシ オブジェクトに対してローカル toString メソッドを実行します。 ただし、代わりに、proxy.applyHostFunction('toString') はホスト プロキシオブジェクトで toString を実行します。

getHostProperty(propertyName: string): Promise<any>;

パラメーター

propertyName

string

値を取得するプロパティの文字列名。

戻り値

Promise<any>

ホスト オブジェクトのプロパティのプロパティの変換された値を表す promise。

getLocalProperty(propertyName)

プロキシ オブジェクト get ローカルでプロパティを実行します。 メソッドを使用して、表すホスト オブジェクトではなく、ホスト オブジェクト プロキシでプロパティを強制的に取得します。 たとえば、 proxy.unknownProperty は、ホスト プロキシオブジェクトから unknownProperty という名前のプロパティを取得します。 ただし、 proxy.getLocalProperty('unknownProperty') はプロキシ オブジェクトに unknownProperty プロパティの値を取得します。

getLocalProperty(propertyName: string): any;

パラメーター

propertyName

string

の値を取得するプロパティの名前。

戻り値

any

プロパティの値。

setHostProperty(propertyName, propertyValue)

ホスト オブジェクトに対してプロパティ set を実行します。 このメソッドを使用して、競合するローカル メソッドまたはプロパティが存在する場合に、プロパティ set を明示的に強制的にリモートで実行します。

setHostProperty(propertyName: string, propertyValue: any): Promise<any>;

パラメーター

propertyName

string

値を設定するプロパティの名前。

propertyValue

any

プロパティを に設定する値。

戻り値

Promise<any>

ホスト オブジェクトのプロパティのプロパティの変換された値を表す promise。 この promise は、プロパティ値が変更された後にのみ解決されます。

setLocalProperty(propertyName, propertyValue)

プロキシ オブジェクト set ローカルでプロパティを実行します。 メソッドを使用して、表すホスト オブジェクトではなく、ホスト オブジェクト プロキシにプロパティを強制的に設定します。 たとえば、 proxy.unknownProperty = 2 は、ホスト プロキシ オブジェクトの unknownProperty という名前のプロパティを設定します。 ただし、 proxy.setLocalProperty('unknownProperty', 2) プロキシ オブジェクトに unknownProperty プロパティの値を設定します。

setLocalProperty(propertyName: string, propertyValue: any): any;

パラメーター

propertyName

string

値を設定するプロパティの名前。

propertyValue

any

プロパティを に設定する値。

戻り値

any

設定後の プロパティの値。