我试图构建一个简单的Lightning组件,它将在页面上显示它所引用的对象的字段值。 我已经应用了教程,但无法在页面上显示字段值。
我不清楚如何在页面上引用对象的id,也不清楚它是否是顶点查询所必需的,或者是否可以不显示字段值。
Position__c是带有一些字段的引用对象API。这是我的组件。
<aura:component implements="flexipage:availableForAllPageTypes" controller="positionController" access="global">
<aura:handler name="init" value="{!this}" action="{!c.doInit}"/>
<aura:attribute name="recordId" type="Id" />
<aura:attribute name="position" type="Position__c"/>
{!v.position.Job_Posting_One_liner__c} //I really just need to print this field value
</aura:component>
Controller:
({
doInit : function(component, event, helper) {
var recordId = component.get("v.recordId");
var action = component.get("c.getPositionDetails");
action.setParams({
"PosId": recordId
});
action.setCallback(this, function(response){
var state = response.getState();
if (component.isValid() && state === "SUCCESS") {
var position = response.getReturnValue();
component.set("v.position", position);
}
});
$A.enqueueAction(action);
}
Apex:
public class positionController {
@AuraEnabled
public static Position__c getPositionDetails(Id PosId) {
Position__c positions =
[SELECT Id, Job_Posting_One_liner__c FROM Position__c Where Id= :PosId limit 1 ];
return positions;
}
}
在js控制器中,尝试从这行中删除引号。
action.setParams({
"PosId": recordId
});
所以它的内容是这样的:
action.setParams({ PosId: recordId });