我该怎么办? Salesforce LWC 组件不断显示此错误

问题描述 投票:0回答:1

**这是从父级 JS 调用的 Apex 类。

具有共享类 accountProvider 的 public {

@AuraEnabled

public static List<Contact> searchContact(Account objAcc){
 
  Id accId =  [select Id,Name from Account where Name =: objAcc.Name].Id;

  System.debug('Received Contact = '+objAcc);
  System.debug('ID '+accId);


   System.debug('contactsColumn'+ ([select Id, Name,Email,Level__c from Contact where Contact  =: accId]));

   return ([select Id, Name,Email,Level__c from Contact where Contact =: accId]);
}

}**

LWC中断的解决方案。

salesforce salesforce-lightning lwc
1个回答
0
投票

Id accId =  [select Id,Name from Account where Name =: objAcc.Name].Id;
这假设恰好有 1 个帐户具有该名称。如果为 0 - 错误。如果是 2 个或更多 - 错误。

最好写这样的东西(嗯,至少更好。如果你有 3 个名称为“Acme”的帐户 - 将随机选择 1 个帐户。

List<Account> accs = [SELECT Id FROM Account WHERE Name = :objAcc.Name LIMIT 1];
if(!accs.isEmpty()){
...
}

现在...您需要返回什么?属于该帐户的联系人?更“专业”的方式是:

@AuraEnabled(cacheable=true)
public static List<Contact> searchContact(Account objAcc){
    return [SELECT Id, Name, Email,Level__c FROM Contact WHERE Account.Name = :objAcc.Name];
}
© www.soinside.com 2019 - 2024. All rights reserved.