1

This must be a a very simple question, but may be I'm doing it wrong.

I wanted to set default aura:attribute value to null on lightning component as below.

e.g.

<aura:attribute name="selectedObj" type="Object" default="null"/>

but this gives me selectedValue as a String, and not comparing with null in lightning javascript controller/helper code.

let selectedObj = component.get('v.selectedObj');

console.log('selectedObj: '+(selectedObj===null) +' string comparison: '+(selectedObj==='null'));
component.set('v.selectedObj', null);
console.log('selectedObj: '+(component.get('v.selectedObj')==null)+' string comparison: '+(component.get('v.selectedObj')=='null'));

Result:

selectedObj: false string comparison: true 
selectedObj: true string comparison: false

Therefore I had to set null value explicitly in javascript controller at the initialization. e.g.

component.set('v.selectedObj', null);

Is this the correct approach to set null in javascript? are there any better alternatives to set default null value for aura:attribute?

Cheers!

1 Answer 1

4

Don't define a default attribute. This causes the attribute to default to null.

Eg

<aura:attribute name="selectedObj" type="Object" />
1
  • Yeah, I was wondering if it was bad to have such a short answer... But I couldn't think of anything else useful to add! Commented Oct 15, 2019 at 2:26

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.