TabContextのモーダル・ウィンドウ操作
グローバル・コンテキストおよびブラウザ・タブ・コンテキストでモーダル・ウィンドウ操作を実行できます。 別のタブでウィンドウ操作を実行する場合は、getTabContext をブラウザIDとともに使用します。
ノート: ブラウザ・タブIDを指定することで、タブのタブ・コンテキストを取得することで、特定のタブでウィンドウ操作を実行できます。 ウィンドウ操作は、ブラウザ・タブのタブ・コンテキストでのみサポートされ、MSIタブではサポートされていません。
getCurrentBrowserContext APIを使用して、MCAフローティング・ツールバー・ウィンドウのtabContextを取得します。 次の例は、getTabContextメソッドの構文を示しています:
getModalWindowContext(): Promise<IModalWindowContext>;
OpenModalタブ・コンテキストでのアクション
TypeScriptの例を次に示します:
const openModal = async () => {
const uiEventsFrameworkInstance: IUiEventsFrameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('app', 'v1');
const openerWindowContext: ITabContext = await uiEventsFrameworkInstance.getTabContext();
const requestObject: IOpenModalWindowRequest = uiEventsFrameworkInstance.requestHelper.createPublishRequest('OpenModal') as IOpenModalWindowRequest;
requestObject.setURL('https://www.wikipedia.org/');
requestObject.setId('modal1');
const response: IModalWindowOperationResponse = await openerWindowContext.publish(requestObject) as IModalWindowOperationResponse;
const id:string = response.getResponseData().getId();
}
JavaScriptの例を次に示します:
const openModal = async () => {
const uiEventsFrameworkInstance = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('app', 'v1');
const openerWindowContext = await uiEventsFrameworkInstance.getTabContext();
const requestObject = uiEventsFrameworkInstance.requestHelper.createPublishRequest('OpenModal');
requestObject.setURL('https://www.wikipedia.org/');
requestObject.setId('modal1');
const response = await openerWindowContext.publish(requestObject);
const id = response.getResponseData().getId();
}
OpenPopup指定されたTabIdのタブ・コンテキストのアクション
TypeScriptの例を次に示します:
const openModal = async () => {
const uiEventsFrameworkInstance: IUiEventsFrameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('app', 'v1');
const tabContext: ITabContext = await uiEventsFrameworkInstance.getTabContext('tabId');
const requestObject: IOpenModalWindowRequest = uiEventsFrameworkInstance.requestHelper.createPublishRequest('OpenModal') as IOpenModalWindowRequest;
requestObject.setURL('https://www.wikipedia.org/');
requestObject.setId('popup1');
const response: IModalWindowOperationResponse = await tabContext.publish(requestObject) as IModalWindowOperationResponse;
const id:string = response.getResponseData().getId();
}
JavaScriptの例を次に示します:
const openModal = async () => {
const uiEventsFrameworkInstance = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('app', 'v1');
const tabContext = await uiEventsFrameworkInstance.getTabContext('tabId');
const requestObject = uiEventsFrameworkInstance.requestHelper.createPublishRequest('OpenModal');
requestObject.setURL('https://www.wikipedia.org/');
requestObject.setId('popup1');
const response = await tabContext.publish(requestObject);
const id = response.getResponseData().getId();
}