Application Event


Event: secondevt

<aura:event type="APPLICATION" description="Event template" >
    <aura:attribute name="accName" type="String"/>

</aura:event>


child1.cmp
<aura:component >
    <aura:attribute name="name" type="string" default="vinayak" />
  <!---Registering Event-->  
    <aura:registerEvent name="one" type="c:secondEvent" />
    <div class="box">
        <lightning:button label="change" onclick="{!c.call}" />
    </div>
</aura:component>

Js
 ({
    call : function(component, event, helper) {
        //getting the value from UI
        var name=component.get('v.name');
        console.log(name);
        var evt=$A.get("e.c:secondEvent");
        evt.setParams({"accName":name});
        evt.fire();
    }
})


child2.cmp
<aura:component >
    <aura:attribute name="val1" type="String" />

    <aura:handler event="c:secondEvent"  action="{!c.invoke}"/>
    <div class="box">
        Name for child_2 is : {!v.val1}
    </div>
</aura:component>

JS
({
    invoke : function(component, event, helper) {
        var acc=event.getParam("accName");
        //Getting the value from event and setting to attribute val1 in UI
        component.set("v.val1",acc);
    }

})


Application:

<aura:application extends="force:slds" >
    <div class="box">
        <c:Child1 />
        <c:Child2 />
    </div>

</aura:application>


Op:

After clicking on change we get the result





Comments

Popular posts from this blog

Lightning Grid Custom Datatable

Comparing Two Values Using Aura If

Dynamic Standard Datatable Using Fieldset