如何在Lightning组件中显示页面对象的字段值?

问题描述 投票:0回答:1

我试图构建一个简单的Lightning组件,它将在页面上显示它所引用的对象的字段值。 我已经应用了教程,但无法在页面上显示字段值。

我不清楚如何在页面上引用对象的id,也不清楚它是否是顶点查询所必需的,或者是否可以不显示字段值。

Position__c是带有一些字段的引用对象API。enter image description here这是我的组件。

<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;
    }
}
salesforce-lightning
1个回答
0
投票

在js控制器中,尝试从这行中删除引号。

action.setParams({
        "PosId": recordId
    });

所以它的内容是这样的:

action.setParams({ PosId: recordId });
© www.soinside.com 2019 - 2024. All rights reserved.