View
Invalid <aura:attribute> type : WrapperClass.wrapperObj
1. 저장 시 에러나는 경우 (Inner Class 적용)
salesExample.cmp
<aura:attribute name = "wrapperObj" type = "SalesExampleController.wrapperObj" />
<aura:attribute name = "wrapperObjList" type = "SalesExampleController.wrapperObj[]" />
SalesExampleController.cls
public with sharing class SalesExampleController {
...
public class WrapperObj {
@AuraEnabled public String aaa {get;set;}
@AuraEnabled public Boolean bbb {get;set;}
public WrapperObj() {
this.wrappers = new List<SalesStock>();
}
}
}
2. 에러 안 나는 경우 (Outer Class 적용)
salesExample.cmp
<aura:attribute name="noError" type="salesStock[]" />
SalesStock.cls
public with sharing class SalesStock {
@AuraEnabled public String aaa {get;set;}
@AuraEnabled public Boolean bbb {get;set;}
...
}
Lightning Aura Component Document ...
Component attribute는 custom Apex class가 될 수 있음
@AruaEnabled annotation을 사용하고, public 인스턴스 프로퍼티만 사용 가능
다음 Apex 데이터 타입만 @AruaEnabled 프로퍼티와 메소드로부터 serialize 될 수 있음
- BLOB을 제외한 Primitive types (기본형 타입)
- Object
- sObject
- Collection types (List, Map)
*Component attribute에 사용되는 Custom class는 Inner class이거나, 상속을 사용할 수 없음
일부 상황에서는 기능이 작동할 수 있으며, 모든 경우에 지원되는 것은 아님
☞ 일단 에러나는 Wrapper class를 Obj로 명시 후 저장 >> 그 후 아래 예시 참조!
Salesforce Stuff -How to pass inner wrapper class to lightning components
※ 참조 : Lightning Aura Components Developer Guide - p.51
'Troubleshooting' 카테고리의 다른 글
@salesforce/resourceUrl ~~ modules only support default imports (0) | 2022.07.07 |
---|---|
SFDX segmentation fault (0) | 2022.05.09 |
InteliJ 에러 해결 (0) | 2022.01.18 |
reply