Apex없이 번개 구성 요소에 현재 사용자 이름을 표시하는 방법
Aug 20 2020
안녕하세요. apex를 작성하지 않고 번개 구성 요소에 현재 로그인 한 사용자 이름을 표시하는 방법입니다. 내가 {! $ SObjectType.CurrentUser.Id} 시도 했으므로 이름이 아닌 Id 만 표시됩니다. 누구든지 나를 도울 수 있습니까?
답변
BernhardMiehl Aug 20 2020 at 16:27
먼저 Salesforce Stackexchange에 오신 것을 환영합니다!
여기에서 도움이 될 답변을 찾았습니다.
Salesforce Lightning은 현재 사용자 사용자 이름을 가져옵니다.
Lightning 데이터 서비스를 사용하여 apex 컨트롤러를 사용할 필요없이 Lightning 구성 요소의 사용자 필드에 액세스 할 수 있습니다.
예:
<aura:attribute name="currentUser" type="User"/>
<force:recordData aura:id="recordLoader" recordId="{!$SObjectType.CurrentUser.Id}"
fields="FirstName, LastName"
targetFields="{!v.currentUser}"/>
구문을 사용하여 값에 액세스합니다. {! v.currentUser.FirstName}
아마도 recordData의 fields 속성에서 'Name'을 사용할 수 있습니다.
작동하기를 바랍니다!
감사합니다, Bernhard
2 salesforceDeveloper Aug 20 2020 at 20:03
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;
}
}
}