すべてのブラウザ・タブに対して実行されるアクション
globalContextにcustomEventを公開するTypescriptの例を次に示します。この例はタブ間で伝播できます。
const publishCustomEvent = async () => {
const payload: ICustomEventRequest = uiEventsFrameworkInstance.requestHelper.createPublishRequest('CustomEvent') as ICustomEventRequest;
payload.setPropagateToTabs(true);
payload.setCustomEventName('customEventName');
payload.setEventPayload({ message: 'any data' });
const globalContext: IGlobalContext = await uiEventsFrameworkInstance.getGlobalContext();
globalContext.publish(payload).then((message: IOperationResponse[]) => {
const response: ICustomEventResponse = message[0] as ICustomEventResponse;
console.log(response.getResponseData());
console.log(response.getResponseData().getData());
console.log(response.getResponseData().getCustomEventName());
}).catch((err) => {
console.log(err);
});
};
globalContextにcustomEventを公開するJavaScriptの例を次に示します。この例はタブ間で伝播できます。
const publishCustomEvent = async () => {
const payload = uiEventsFrameworkInstance.requestHelper.createPublishRequest('CustomEvent');
payload.setPropagateToTabs(true);
payload.setCustomEventName('customEventName');
payload.setEventPayload({ message: 'any data' });
const globalContext = await uiEventsFrameworkInstance.getGlobalContext();
globalContext.publish(payload).then((message) => {
console.log(message[0].getResponseData());
console.log(message[0].getResponseData().getData());
console.log(message[0].getResponseData().getCustomEventName());
}).catch((err) => {
console.log(err);
});
};