I am trying to pass data from lwc to aura via LMS. How can i do it? I dont really understand what to do in aura.
handleReceiveMessage executed, but i cannot get data.
LWC
import { LightningElement, wire } from 'lwc';
import messageChannel from '@salesforce/messageChannel/SampleMessageChannel__c';
import {publish, MessageContext} from 'lightning/messageService'
export default class Publisher extends LightningElement {
@wire(MessageContext)
messageContext;
handleButtonClick(event) {
let message = {messageText: 'This is a test'};
publish(this.messageContext, messageChannel, message);
}
}
Aura
<aura:component access="global" implements="lightning:availableForFlowScreens">
<aura:attribute name="messageText" type="String" />
<lightning:messageChannel type="SampleMessageChannel__c"
aura:id="SMC"
scope="APPLICATION"
onMessage="{!c.handleReceiveMessage}"
/>
<div>{!messageText}</div>
</aura:component>
({
handleReceiveMessage: function (component, event, helper) {
if (event != null) {
const message = event.getParam('messageText');
component.set("v.messageText", 'Message: ' + message );
}
}
});