You need to sign in to do that
Don't have an account?
Terence Viban
Application Event Issues : Uncaught error in $A.run() : Cannot read property 'setParams' of undefined
Hi there,
having problems get a reference to my application event. I get the error above showing that my application is undefined. According to the docs I get do this:
var lookupEvt = $A.get("e.c:lookup");
lookupEvt.setParams({
lookupTyp: sender,
searchOption: searchOption,
selectedEmailAddresses:selectedEmailAddresses
});
lookupEvt.fire();
my event is called lookup.evt and looks like this:
<aura:event type="APPLICATION">
<aura:attribute name="lookupTyp" type="String" />
<aura:attribute name="searchOption" type="String" />
<aura:attribute name="selectedEmailAddresses" type="String" />
</aura:event>
I register my event in another component like this:
<aura:registerEvent name="lookup" type="c:lookup" />
Component events work fine but I need to use application events because a couple of different components should be able to trigger and handle these events.
Any ideas on how to overcome this problem?
I have used component events and they work perfectly well. But I need
having problems get a reference to my application event. I get the error above showing that my application is undefined. According to the docs I get do this:
var lookupEvt = $A.get("e.c:lookup");
lookupEvt.setParams({
lookupTyp: sender,
searchOption: searchOption,
selectedEmailAddresses:selectedEmailAddresses
});
lookupEvt.fire();
my event is called lookup.evt and looks like this:
<aura:event type="APPLICATION">
<aura:attribute name="lookupTyp" type="String" />
<aura:attribute name="searchOption" type="String" />
<aura:attribute name="selectedEmailAddresses" type="String" />
</aura:event>
I register my event in another component like this:
<aura:registerEvent name="lookup" type="c:lookup" />
Component events work fine but I need to use application events because a couple of different components should be able to trigger and handle these events.
Any ideas on how to overcome this problem?
I have used component events and they work perfectly well. But I need
I registered my event with two components. My understanding is that it doesn't matter since each of these two components will be able to fire the event.
As of now I am instantiating the event from the Controller of one of the components that have registered to the event; this is when I get the undefined error.
Just to make sure I am not missing anything, I have set up the following small test.
EVENT:
<aura:event type="APPLICATION" description="Event template">
<aura:attribute name="flag" type="String" />
</aura:event>
COMPONENT ( has following two lines )
<aura:registerEvent name="toggleLookup" type="c:toggleLookup" />
<ui:button label="Test Event" press="{!c.fireToggleLookupEvent}" />
CONTROLLER (has the following fxn)
fireToggleLookupEvent : function(component, event, helper){
var toggleEvt = $A.get("e.c:toggleLookup");
console.log("@@@@ fireToggleLookupEvent - toggleEvt : " + toggleEvt);
}
Just like before toggleEvt is "undefined".
I would at least expect fireToggleLookupEvent to instantiate this event.
What am I missing???
Thanks