lightning__tabClosed

A Lightning message channel that corresponds to the lightning:tabClosed Aura app event.

Response

The response is the same as that of the lightning:tabClosed Aura app event.

LWC Example

Import the lightning__tabClosed message channel from the @salesforce/messageChannel/ scoped module. The event returns the message in the response.

1import { LightningElement, wire } from "lwc";
2import { MessageContext, subscribe, unsubscribe, APPLICATION_SCOPE } from "lightning/messageService";
3import tabClosedChannel from "@salesforce/messageChannel/lightning__tabClosed";
4
5export default class TabClosedExample extends LightningElement {
6    subscription = null;
7    @wire(MessageContext) messageContext;
8
9    // Encapsulate logic for Lightning message service subscribe and unsubscribe
10    subscribeToMessageChannel() {
11        if (!this.subscription) {
12            this.subscription = subscribe(
13                this.messageContext,
14                tabClosedChannel,
15                (message) => this.handleMessage(message),
16                { scope: APPLICATION_SCOPE }
17            );
18        }
19    }
20
21    unsubscribeToMessageChannel() {
22        unsubscribe(this.subscription);
23        this.subscription = null;
24    }
25
26    // Handler for message received by component
27    handleMessage(message) {
28        // do something
29        console.log("Tab closed: ", message.tabId);
30    }
31    // Standard lifecycle hooks used to subscribe and unsubscribe to the message channel
32    connectedCallback() {
33        this.subscribeToMessageChannel();
34    }
35
36    disconnectedCallback() {
37        this.unsubscribeToMessageChannel();
38    }

For more information, see Subscribe and Unsubscribe from a Message Channel.