Web Development Onboarding
我正在创建一个闪电 Web 组件,以在时间线的概念中可视化销售人员记录。我已经成功创建了时间线组件、样式等,并使用 salesforce 最近发布的 API 检索数据。我在下面提供了一个链接,以获取更多信息。 我对 JavaScript 还很陌生,所以如果有任何严重的错误,请原谅我。
https://developer.salesforce.com/docs/component-library/documentation/en/lwc/lwc.reference_wire_adapters_get_lated_list_records
问题来自于当我检索数据并尝试根据字段的特定值将记录拆分为不同的集合时,它不会产生任何结果。我在 HTML 中使用 for:each 来调用我的集合,但没有显示任何记录。
我认为问题在于将数据附加到集合的 for 循环,但我不确定。我已将 data[x] 更改为 this.records[x] ,它产生相同的结果。我很感激任何指点,并欢迎任何建设性的批评。
请注意,当我使用 API 提供的记录集合时,会显示记录。
Timeline.js
import { LightningElement,api, wire, track} from 'lwc';
import { getRelatedListRecords } from 'lightning/uiRelatedListApi';
export default class timeline extends LightningElement {
@api recordId;
@track CompletedTasks = [];
@track InProgressTasks = [];
@track OverdueTasks = [];
error;
records;
@wire(getRelatedListRecords, {
parentRecordId: '$recordId',
relatedListId: 'Tasks__r',
fields: ['Task__c.Id','Task__c.Name', 'Task__c.Estimated_Completion_Date__c', 'Task__c.Completion_Status__c'],
sortBy: ['Task__c.Estimated_Completion_Date__c'],
})listInfo({ error, data }) {
if (data) {
this.records = data.records;
this.error = undefined;
for (let x = 0; x < data.length; x++) {
if (data[x].Completion_Status__c === "Completed") {
this.CompletedTasks.append(data[x]);
} else if (data[x].Completion_Status__c === "In Progress") {
this.InProgressTasks.append(data[x]);
} else if (data[x].Completion_Status__c === "Overdue") {
this.OverdueTasks.append(data[x]);
}
}
} else if (error) {
this.error = error;
this.records = undefined;
}
}
时间线.html
Web Development Onboarding
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号