force:hasRecordId 界面不提供来自“新建”按钮覆盖的 recordId
force:hasRecordId interface doesn't provide recordId from “new” button override
我有两个自定义对象(我们称它们为 House 和 Resident)。
房屋记录页面有一个包含所有相关住户的相关列表。
我还有两个闪电组件(ResidentDetails 和 NewResident)。
NewResident 从两个地方调用,在不同记录页面的 ResidentDetails 中。以及 Resident 的“新建”按钮覆盖。
NewResident 实现 force:hasRecordId 和 lightning:actionOverride(见下文)。
但是,由于它是在不同的上下文中启动的(新常驻页面,像这样:blah.lightning.force.com/lightning/o/Resident__c/new)。
我的问题是,recordId 属性不包含房屋记录 ID。
component.get("v.recordId")
在 doInit
中得到 undefined
。
相关代码示例:
NewResident.cmp
<aura:component implements="lightning:actionOverride,force:hasRecordId" controller="ResidentDetailsController" access="global">
<!--Handlers-->
<aura:handler name="init" value="{!this}" action="{!c.doInit}"/>
<p>{!v.recordId}</p> <!--empty-->
<!--A bunch of other irrelevant stuff-->
</aura:component>
NewResidentController.js
({
doInit : function(component, event, helper) {
console.log(component.get("v.recordId")); //logs `undefined`
},
})
如果我从 ResidentDetails 组件调用该组件,这会起作用,但在覆盖新常驻按钮时不起作用。
我的问题是:有没有办法从以前的上下文中检索 recordId?
感谢任何帮助!
Salesforce 似乎还无法做到这一点。与我交谈过的 Salesforce 支持工程师并不知道任何近期实施该功能的计划。
在我的具体场景中,我将不得不在 aura 组件中重新实现“相关列表”功能,然后调用“新”组件。
我有两个自定义对象(我们称它们为 House 和 Resident)。
房屋记录页面有一个包含所有相关住户的相关列表。
我还有两个闪电组件(ResidentDetails 和 NewResident)。
NewResident 从两个地方调用,在不同记录页面的 ResidentDetails 中。以及 Resident 的“新建”按钮覆盖。
NewResident 实现 force:hasRecordId 和 lightning:actionOverride(见下文)。
但是,由于它是在不同的上下文中启动的(新常驻页面,像这样:blah.lightning.force.com/lightning/o/Resident__c/new)。
我的问题是,recordId 属性不包含房屋记录 ID。
component.get("v.recordId")
在 doInit
中得到 undefined
。
相关代码示例:
NewResident.cmp
<aura:component implements="lightning:actionOverride,force:hasRecordId" controller="ResidentDetailsController" access="global">
<!--Handlers-->
<aura:handler name="init" value="{!this}" action="{!c.doInit}"/>
<p>{!v.recordId}</p> <!--empty-->
<!--A bunch of other irrelevant stuff-->
</aura:component>
NewResidentController.js
({
doInit : function(component, event, helper) {
console.log(component.get("v.recordId")); //logs `undefined`
},
})
如果我从 ResidentDetails 组件调用该组件,这会起作用,但在覆盖新常驻按钮时不起作用。
我的问题是:有没有办法从以前的上下文中检索 recordId?
感谢任何帮助!
Salesforce 似乎还无法做到这一点。与我交谈过的 Salesforce 支持工程师并不知道任何近期实施该功能的计划。
在我的具体场景中,我将不得不在 aura 组件中重新实现“相关列表”功能,然后调用“新”组件。