Насколько я вижу по коду - opportunityContactRoles это List. Чтобы получить поля записи, надо эту запись из List достать. Попробуй поиграться с индексами что-то типа такого.
this.opportunityContactRoles.data[0]
Но вообще совет. Не используй
wire. Это хрень добавляет кучу сложностей. Так как и не используй
getFieldValue и
@salesforce/schemaпроще сделать такой метод
async connectedCallback() {
this.opportunityContactRoles = await getOpportunityContactRoles(searchPayload);
this.firstOpportunityContactRole = this.opportunityContactRoles[0];
}а на странице просто сделать так:
<lightning-input readonly type="text" variant="standard" label="Recipient Name" value={firstOpportunityContactRole.Contact.FirstName} ></lightning-input>
<lightning-input readonly type="text" variant="standard" label="Recipient Email" value={firstOpportunityContactRole.Contact.Email}></lightning-input>только в сам SELECT в контроллере надо добавить поля
Contact.FirstName
Contact.Email
Но вообще если делать красиво, то нужно сделать какой DTO класс со всеми нужными полями. Собраться все данные в Apeх контроллере, и уже работать с этим DTO. Но не уверен что Salesforce документация освящает этот момент.