Newer Version Available
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.
- 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.
1<aura:component> 2 <lightning:messageChannel type="myMessageChannel__c" /> 3 <lightning:card>...</lightning:card> 4</aura:component>This code throws an error when the Aura component tries to render.
1<aura:component> 2 <lightning:card> 3 <lightning:messageChannel type="myMessageChannel__c" /> 4 </lightning:card> 5</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.