HostObjectSyncProxy class

同期ホスト オブジェクト プロキシ。 によって CoreWebView2.AddHostObjectToScript 追加されたホスト オブジェクトは、 を使用して window.chrome.webview.hostObjects.{name}ホスト オブジェクト プロキシとして公開されます。 ホスト オブジェクト プロキシは、ホスト オブジェクトを表します。

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

Extends

メソッド

applyHostFunction(argArray)

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

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

async()

同じホスト オブジェクトの非同期ホスト オブジェクト プロキシをブロックして返すメソッド。 たとえば、 chrome.webview.hostObjects.sync.sample.methodCall() 同期ホスト オブジェクト プロキシを返します。 このブロックで メソッドをasync実行し、同じホスト オブジェクトの非同期ホスト オブジェクト プロキシを返します。 const asyncProxy = chrome.webview.hostObjects.sync.sample.methodCall().async()

getHostProperty(propertyName)

ホスト オブジェクトに対してプロパティ get を実行します。 競合するローカル メソッドまたはプロパティが存在する場合に、プロパティ 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): any;

パラメーター

argArray

any

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

戻り値

any

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

async()

同じホスト オブジェクトの非同期ホスト オブジェクト プロキシをブロックして返すメソッド。 たとえば、 chrome.webview.hostObjects.sync.sample.methodCall() 同期ホスト オブジェクト プロキシを返します。 このブロックで メソッドをasync実行し、同じホスト オブジェクトの非同期ホスト オブジェクト プロキシを返します。 const asyncProxy = chrome.webview.hostObjects.sync.sample.methodCall().async()

async(): HostObjectAsyncProxy;

戻り値

同じホスト オブジェクトの非同期ホスト オブジェクト プロキシ。

getHostProperty(propertyName)

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

getHostProperty(propertyName: string): any;

パラメーター

propertyName

string

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

戻り値

any

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

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): any;

パラメーター

propertyName

string

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

propertyValue

any

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

戻り値

any

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

setLocalProperty(propertyName, propertyValue)

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

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

パラメーター

propertyName

string

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

propertyValue

any

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

戻り値

any

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