Lightning Message Service Limitations

Keep the following in mind when working with Lightning message service.

Supported Experiences

Lightning message service supports only the following experiences:

  • Lightning Experience standard navigation

  • Lightning Experience console navigation

  • Salesforce mobile app for Aura and Lightning Web Components, but not for Visualforce pages

  • Lightning components used in Experience Builder sites.

    note: Lightning Message Service doesn't work with Salesforce Tabs + Visualforce sites or with Visualforce pages in Experience Builder sites.

Aura Components That Don’t Render Aren’t Supported

Lightning message service only supports Aura components that render. You can’t use lightning:messageChannel in an Aura component that uses the background utility item interface. Similarly, Aura components that use lightning:messageChannel can’t call Lightning Message Service methods in the init lifecycle handler because the component hasn’t rendered.

lightning:messageChannel Must Be a Child of aura:component

In a custom Aura component, lightning:messageChannel must be an immediate child of the aura:component tag. It can’t be nested in an HTML tag or another component.

For example, the following code renders without a problem.

<aura:component>
  <lightning:messageChannel type="myMessageChannel__c" />
  <lightning:card>...</lightning:card>
</aura:component>

This code throws an error when the Aura component tries to render.

<aura:component>
  <lightning:card>
    <lightning:messageChannel type="myMessageChannel__c" />
  </lightning:card>
</aura:component>

Messages are Constrained by iframe Boundary

If your component uses Lightning message service to publish a message, that message is constrained by any iframe boundary. To work around this limitation, use the sforce.one.subscribe() and sforce.one.unsubscribe() methods.

Avoid Dynamically Creating lightning:messageChannel Components in Aura

Do not usecreateComponent() to dynamically create a lightning:messageChannel component in Aura. Dynamically created components may not work as expected. For information on supported ways to create a lightning:messageChannel component, see Create a Message Channel.

See Also