force:recordData无法在快速操作上使用

时间:2019-06-04 09:05:11

标签: javascript salesforce lightning aura-framework

我在Task对象上使用“快速操作”以替换旧的js按钮。 我试图用“ recordData”替换一些ajax收费查询,并在控制器中使用数据。 结果始终为空。

我尝试过-default和layoutType =“ FULL”,相同结果为空。

<aura:component implements="flexipage:availableForAllPageTypes,force:hasRecordId,force:lightningQuickAction" controller="wsc_checkResponse">
    <aura:attribute name="record" type="Task" />

<force:recordData layoutType="FULL"
                  recordId="{!v.recordId}"
                  targetFields="{!v.record}"
                  recordUpdated="{!c.recordUpdate}" />
    <aura:attribute name="taskWhoId" type="id"/>

    <force:recordData aura:id="recordLoader"
    recordId="{!v.recordId}"
    fields="WhoId"
    targetFields="{!v.taskWhoId}"
    targetError="{!v.recordLoadError}"
    recordUpdated="{!c.onTaskLoadingCompleted}"
    />
    <div class="Record Details"> 
        <lightning:card iconName="standard:account"  >
            <div class="slds-p-horizontal--small">
                <p class="slds-text-heading--medium"><lightning:formattedPhone title="taskWhoId" value="{!v.record.Id}" /></p>
                <p class="slds-text-heading--medium"><lightning:formattedPhone title="taskWhoId" value="{!v.record.taskWhoId}" /></p>
            </div>
        </lightning:card>
    </div>
</aura:component>

ctrl.js

({
    recordUpdate: function(component, event, helper){
        console.log('record',component.get("v.record"));
    },
    onTaskLoadingCompleted : function(component, event, helper) {
    var taskWhoId = component.get("v.taskWhoId");
        console.log('taskWhoId',taskWhoId);

    }
})

任务记录或最后的WhoId是预期值,但为nada。

1 个答案:

答案 0 :(得分:0)

与其他基础的Lightning组件(包括<lightning:recordEditForm><force:recordData>)一样,它也不支持Task或Event对象。

《 Lightning Aura组件开发人员指南》中的受支持对象列表为here。潜在的限制似乎来自UI API,它不支持任务和事件。