При разработке Salesforce веб-компоненты Lightning (LWC) предоставляют современный и эффективный способ создания пользовательских интерфейсов. При работе с записями важно понимать, как обрабатывать типы записей по умолчанию в LWC. В этой статье мы рассмотрим различные методы и предоставим примеры кода, которые помогут вам эффективно управлять типами записей по умолчанию в ваших компонентах LWC.
Метод 1: получение идентификатора типа записи по умолчанию с помощью контроллера Apex
// Apex Controller method
@AuraEnabled(cacheable=true)
public static String getDefaultRecordTypeId(String objectApiName) {
return Schema.SObjectType.Account.getRecordTypeInfosByDeveloperName().get('Default').getRecordTypeId();
}
Метод 2: получение идентификатора типа записи по умолчанию с помощью Wire Service
import { LightningElement, wire } from 'lwc';
import { getRecord } from 'lightning/uiRecordApi';
export default class MyComponent extends LightningElement {
@wire(getRecord, { recordId: '$recordId', fields: ['Account.RecordTypeId'] })
wiredAccount({ error, data }) {
if (data) {
const recordTypeId = data.fields.RecordTypeId.value;
// Use the retrieved recordTypeId as needed
} else if (error) {
// Handle error
}
}
}
Метод 3: получение идентификатора типа записи по умолчанию с помощью LDS (Lightning Data Service)
import { LightningElement, wire } from 'lwc';
import { getRecord } from 'lightning/uiRecordApi';
export default class MyComponent extends LightningElement {
@wire(getRecord, { recordId: '$recordId', layoutTypes: ['Default'] })
wiredAccount({ error, data }) {
if (data) {
const recordTypeId = data.recordTypeInfo.recordTypeId;
// Use the retrieved recordTypeId as needed
} else if (error) {
// Handle error
}
}
}
Метод 4. Используйте NavigationMixin для создания записи с типом записи по умолчанию
import { LightningElement, wire } from 'lwc';
import { NavigationMixin } from 'lightning/navigation';
export default class MyComponent extends NavigationMixin(LightningElement) {
createRecordWithDefaultType() {
this[NavigationMixin.Navigate]({
type: 'standard__objectPage',
attributes: {
objectApiName: 'Account',
actionName: 'new'
},
state: {
defaultFieldValues: {
RecordTypeId: 'Default' // Use the default record type developer name here
}
}
});
}
}
Обработка типов записей по умолчанию в LWC имеет решающее значение для создания настраиваемых интерфейсов Salesforce. В этой статье мы рассмотрели несколько методов получения идентификатора типа записи по умолчанию с помощью контроллеров Apex, проводной службы, службы данных Lightning, а также способы создания записи с типом записи по умолчанию с помощью NavigationMixin. Используя эти методы, вы можете улучшить взаимодействие с пользователем и оптимизировать процесс разработки в Salesforce.