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 エンジンでも実行されます。 既定では、 toJSON
や Symbol.toPrimitive
などの JavaScript で意味を持つ省略可能なメソッドが含まれます。 必要に応じて配列にさらにを追加します。
- Extends
メソッド
apply |
このプロキシに対応するホスト オブジェクトに対してメソッド呼び出しを実行します。 すべてのパラメーターは、ホスト オブジェクト メソッドを呼び出すために変換されます。 |
get |
ホスト オブジェクトに対してプロパティ |
get |
プロキシ オブジェクト |
set |
ホスト オブジェクトに対してプロパティ |
set |
プロキシ オブジェクト |
メソッドの詳細
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
設定後の プロパティの値。