Communicating between 2 tabs opens up exciting opportunities while creating web applications. Before we dive into its use cases, let's learn to send and receive messages between two tabs.
We should instantiate
BroadcastChannel
with a channel_name
as a parameter:
After instantiating, we can listen for event message
we can use postMessage
method, to broadcast the message to all the tabs connected to the same channel
Some of the use cases of this are:
- Detect user actions in other tabs
- Know when a user logs into an account in another window/tab.
- Instruct a worker to perform some background work
- Know when a service is done performing some action.
Example: If use logouts in one tab, we can automatically logout user in all the tabs