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!