Как отобразить текущее имя пользователя в компоненте Lightning без Apex
Привет всем, как отобразить имя текущего вошедшего в систему пользователя в компоненте молнии без записи апекса. как я пытался {! $ SObjectType.CurrentUser.Id} это, он будет отображать только Id, а не имя. Может кто-нибудь мне помочь
Ответы
впервые добро пожаловать в stackexchange!
Здесь я нашел ответ, который вам поможет:
Salesforce lightning получить имя пользователя текущего пользователя
Мы можем использовать службу данных Lightning для доступа к любому из пользовательских полей в компоненте Lightning без необходимости использования контроллера apex.
Пример:
<aura:attribute name="currentUser" type="User"/>
<force:recordData aura:id="recordLoader" recordId="{!$SObjectType.CurrentUser.Id}"
fields="FirstName, LastName"
targetFields="{!v.currentUser}"/>
Получите доступ к значению, используя синтаксис: {! V.currentUser.FirstName}
Вероятно, вы можете просто использовать «Имя» в свойстве fields в recordData.
Надеюсь, что это работает!
С уважением, Бернхард
Если вы используете LWC, вы можете получить текущее имя пользователя, используя следующее:
import {LightningElement,wire,track} from 'lwc';
import {getRecord} from 'lightning/uiRecordApi';
import USER_ID from '@salesforce/user/Id';
import NAME_FIELD from '@salesforce/schema/User.Name';
export default class Userinfoexample extends LightningElement {
@track error ;
@track name;
@wire(getRecord, {
recordId: USER_ID,
fields: [NAME_FIELD]
}) wireuser({
error,
data
}) {
if (error) {
this.error = error ;
} else if (data) {
this.name = data.fields.Name.value;
}
}
}