如何在账户记录页面抓取账户ID或记录id(例如“0015g00000Bkgg6AAB”)
How to grap account's ID or record id(e.g. "0015g00000Bkgg6AAB") on the account record page
我在帐户记录页面中有一个自定义 LWC 小部件,当页面加载我的小部件时,我需要知道帐户的 ID 或记录 ID(例如“0015g00000Bkgg6AAB”),
我的测试代码如下:
import { LightningElement, wire } from 'lwc';
import { getRecord, getFieldValue } from 'lightning/uiRecordApi';
const fields = [NAME_FIELD, REVENUE_FIELD, BillingAddress_FIELD];
export default class AccountCreator extends LightningElement {
@wire(getRecord, { recordId: '$recordId', fields })
account;
get name() {
return getFieldValue(this.account.data,NAME_FIELD);
}
get revenue() {
return getFieldValue(this.account.data, REVENUE_FIELD);
}
get address() {
return getFieldValue(this.account.data, BillingAddress_FIELD);
}
}
将这两行添加到您的 class
import { LightningElement, wire, api } from 'lwc'; // 1 - add "api"
export default class AccountCreator extends LightningElement {
@api recordId; // 2 - add variable to magically store the current record's id
}
有 2 个特殊变量用于学习当前记录的 ID 和当前 sObject 类型(如果你想构建在不同页面上放置时表现不同的组件)。此处提供更多信息:https://developer.salesforce.com/docs/component-library/documentation/en/lwc/lwc.use_record_context
您的代码看起来像是从示例中复制的,您的 @wire
已经监听了 recordId
的更改 - 您只是没有定义此变量。
我在帐户记录页面中有一个自定义 LWC 小部件,当页面加载我的小部件时,我需要知道帐户的 ID 或记录 ID(例如“0015g00000Bkgg6AAB”), 我的测试代码如下:
import { LightningElement, wire } from 'lwc';
import { getRecord, getFieldValue } from 'lightning/uiRecordApi';
const fields = [NAME_FIELD, REVENUE_FIELD, BillingAddress_FIELD];
export default class AccountCreator extends LightningElement {
@wire(getRecord, { recordId: '$recordId', fields })
account;
get name() {
return getFieldValue(this.account.data,NAME_FIELD);
}
get revenue() {
return getFieldValue(this.account.data, REVENUE_FIELD);
}
get address() {
return getFieldValue(this.account.data, BillingAddress_FIELD);
}
}
将这两行添加到您的 class
import { LightningElement, wire, api } from 'lwc'; // 1 - add "api"
export default class AccountCreator extends LightningElement {
@api recordId; // 2 - add variable to magically store the current record's id
}
有 2 个特殊变量用于学习当前记录的 ID 和当前 sObject 类型(如果你想构建在不同页面上放置时表现不同的组件)。此处提供更多信息:https://developer.salesforce.com/docs/component-library/documentation/en/lwc/lwc.use_record_context
您的代码看起来像是从示例中复制的,您的 @wire
已经监听了 recordId
的更改 - 您只是没有定义此变量。