问题描述
我试图在窗体的lightning组件中显示状态字段,然后调用apex方法存储信息,但是它不在后端存储状态值。我不确定下面的代码有什么问题。
这是我的闪电组件代码:
<aura:component implements="forceCommunity:availableForAllPageTypes" access="global" controller="StateController">
<aura:attribute name="ContactInfo" type="Contact"
default="{ 'sobjectType': 'Contact','addressLine1': '','addressLine2': '','city': '','zip': '','state': '','country': '','citizenshipType': ''
}"/>
<!---State-->
<div class="form-element__control">
<label class="form-element__label formlabel" for="state">State</label>
<div class="form-element">
<div class="form-element__control">
<lightning:select
aura:id="fieldId"
class="select"
name="state"
label="State"
variant="label-hidden"
required="true"
value="{!v.ContactInfo.Permanent_State_Province__c}"
messageWhenValueMissing="Please Select a State">
<option value="">Select a state</option>
<option value="AL">Alabama</option>
<option value="AK">Alaska</option>
<option value="AS">American Samoa</option>
<option value="AZ">Arizona</option>
<option value="AR">Arkansas</option>
<option value="CA">California</option>
<option value="CO">Colorado</option>
<option value="CT">Connecticut</option>
<option value="DE">Delaware</option>
<option value="DC">district of Columbia</option>
<option value="FL">Florida</option>
<option value="GA">Georgia</option>
<option value="HI">Hawaii</option>
<option value="ID">Idaho</option>
<option value="IL">Illinois</option>
<option value="IN">Indiana</option>
<option value="IA">Iowa</option>
<option value="KS">Kansas</option>
<option value="KY">Kentucky</option>
<option value="LA">Louisiana</option>
<option value="ME">Maine</option>
<option value="MD">Maryland</option>
<option value="MA">Massachusetts</option>
<option value="MI">Michigan</option>
<option value="MN">Minnesota</option>
<option value="MS">Mississippi</option>
<option value="MO">Missouri</option>
<option value="MT">Montana</option>
<option value="NE">Nebraska</option>
<option value="NV">Nevada</option>
<option value="NH">New Hampshire</option>
<option value="NJ">New Jersey</option>
<option value="NM">New Mexico</option>
<option value="NY">New York</option>
<option value="NC">north Carolina</option>
<option value="ND">north Dakota</option>
<option value="OH">Ohio</option>
<option value="OK">Oklahoma</option>
<option value="OR">Oregon</option>
<option value="PA">Pennsylvania</option>
<option value="PR">Puerto Rico</option>
<option value="RI">Rhode Island</option>
<option value="SC">South Carolina</option>
<option value="SD">South Dakota</option>
<option value="TN">Tennessee</option>
<option value="TX">Texas</option>
<option value="UT">Utah</option>
<option value="VT">Vermont</option>
<option value="VI">Virgin Islands</option>
<option value="VA">Virginia</option>
<option value="WA">Washington</option>
<option value="WV">West Virginia</option>
<option value="WI">Wisconsin</option>
<option value="WY">Wyoming</option>
<option value="AA">Armed Forces America</option>
</lightning:select>
</div>
</div>
</div>
<div>
<lightning:button name="saveContinue" onclick="{!c.clickUpdate}" >
Save and Continue
</lightning:button>
</div>
</aura:component>
控制器类:
({
clickUpdate : function(component,event,helper) {
var allValid = component.find('fieldId').reduce(function (validSoFar,inputCmp) {
inputCmp.showHelpMessageIfInvalid();
return validSoFar && !inputCmp.get('v.validity').valueMissing;
},true);
if(allValid){
var isError = component.get("v.isError");
if( isError ){
component.set("v.isError",false);
}
helper.saveData(component,helper);
}else{
component.set("v.isError",true);
}
}
})
帮助程序类:
({
saveData : function(component,helper) {
var bttnClicked = event.getSource().get("v.name");
var action = component.get("c.saveRecord");
action.setParams({
contactData : component.get("v.ContactInfo")
});
.........
.........
.........
})
这是顶点类:
public without sharing class StateController {
@AuraEnabled
public static void saveRecord(contact contactData){
try{
if(contactData!=null){
update contactData;
}
}catch(Exception ex){
system.debug('ex'+ex);
}
}
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)