I'm trying to preset a Lookup field when my Lightning Component form loads, but the field is always showing as nothing selected, even though the value exists in the field itself.
The code looks like this:
InputFieldTest.cmp
<aura:component implements="force:appHostable,flexipage:availableForAllPageTypes,flexipage:availableForRecordHome,force:hasRecordId,forceCommunity:availableForAllPageTypes" access="global" >
<ltng:require styles="{!$Resource.slds_v0110 + '/assets/styles/salesforce-lightning-design-system-ltng.min.css'}"
afterScriptsLoaded="{!c.performInit}" />
<aura:attribute name="newRec" type="Contact"
default="{ 'sobjectType': 'Contact',
'FirstName': '',
'LastName': '',
'AccountId': ''
}"
access="global" />
<aura:handler name="init" value="{!this}" action="{!c.doInit}" />
<div class="container slds" style="padding:5px">
<form class="slds-form--stacked">
<div class="slds-form-element">
<label class="slds-form-element__label">First Name</label>
<div class="slds-form-element__control">
<force:inputField value="{!v.newRec.FirstName}" />
</div>
</div>
<div class="slds-form-element">
<label class="slds-form-element__label">Last Name</label>
<div class="slds-form-element__control">
<force:inputField value="{!v.newRec.LastName}" />
</div>
</div>
<div class="slds-form-element">
<label class="slds-form-element__label">Account</label>
<div class="slds-form-element__control">
<force:inputField value="{!v.newRec.AccountId}" />
</div>
</div>
</form>
</div>
</aura:component>
InputFieldTestController.js
({
doInit: function(component) {
},
performInit: function(component) {
component.set("v.newRec.AccountId","0019000001eByTN");
component.set("v.newRec.LastName","Test L");
}
})
The lookup field is always empty, I've to manually select value in it. The other field is prepopulating correctly.
Is there any trick to pre populate a lookup field bounded to force:inputField
?