XDMChannel class
代表畫面格\檔之間的通訊通道在多個 funtion\method 呼叫之間保持「運作」
建構函式
XDMChannel(Window, string) |
方法
error(IJson |
|
get |
取得物件登錄以處理來自這個特定通道的訊息。 收到訊息時,會先使用此通道登錄,如果這裡找不到任何處理程式,則會使用全域登錄。 |
get |
取得 Proxyxied 物件,此物件表示在此通道的遠端端使用指定實例識別碼註冊的物件。 |
invoke |
透過 RPC 叫用方法。 查閱通道遠端端的已註冊物件,並叫用指定的方法。 |
on |
處理這個通道上收到的訊息。 分派至透過物件登錄找到的適當物件 |
owns(Window, string, IJson |
建構函式詳細資料
XDMChannel(Window, string)
new XDMChannel(postToWindow: Window, targetOrigin?: string)
參數
- postToWindow
-
Window
- targetOrigin
-
string
方法詳細資料
error(IJsonRpcMessage, Error)
function error(messageObj: IJsonRpcMessage, errorObj: Error)
參數
- messageObj
- IJsonRpcMessage
- errorObj
-
Error
getObjectRegistry()
取得物件登錄以處理來自這個特定通道的訊息。 收到訊息時,會先使用此通道登錄,如果這裡找不到任何處理程式,則會使用全域登錄。
function getObjectRegistry(): IXDMObjectRegistry
傳回
getRemoteObjectProxy<T>(string, Object)
取得 Proxyxied 物件,此物件表示在此通道的遠端端使用指定實例識別碼註冊的物件。
function getRemoteObjectProxy<T>(instanceId: string, contextData?: Object): Promise<T>
參數
- instanceId
-
string
已註冊物件的唯一識別碼
- contextData
-
Object
要傳遞至已註冊物件的 Factory 方法的選擇性內容資料
傳回
Promise<T>
invokeRemoteMethod<T>(string, string, any[], Object, ISerializationSettings)
透過 RPC 叫用方法。 查閱通道遠端端的已註冊物件,並叫用指定的方法。
function invokeRemoteMethod<T>(methodName: string, instanceId: string, params?: any[], instanceContextData?: Object, serializationSettings?: ISerializationSettings): Promise<T>
參數
- methodName
-
string
- instanceId
-
string
已註冊物件的唯一識別碼
- params
-
any[]
要叫用之方法的引數
- instanceContextData
-
Object
要傳遞至已註冊物件的 Factory 方法的選擇性內容資料
- serializationSettings
- ISerializationSettings
選擇性序列化設定
傳回
Promise<T>
onMessage(IJsonRpcMessage)
處理這個通道上收到的訊息。 分派至透過物件登錄找到的適當物件
function onMessage(rpcMessage: IJsonRpcMessage): boolean
參數
- rpcMessage
- IJsonRpcMessage
訊息資料
傳回
boolean
如果訊息是由這個通道處理,則為 True。 否則為 false。
owns(Window, string, IJsonRpcMessage)
function owns(source: Window, origin: string, rpcMessage: IJsonRpcMessage): boolean
參數
- source
-
Window
- origin
-
string
- rpcMessage
- IJsonRpcMessage
傳回
boolean