동도리 개발 로그
Flutter(플러터) - ERC721 function 호출시 에러 본문
반응형
요새 앱을 이용한 NFT 관련 프로젝트를 진행중이다.
Flutter로 ERC721 스마트 컨트렉트를 호출 할때 'safeTransferFrom'을 호출 할 경우가 생겼다.
하지만 아래와 같은 오류가 나온다.
Unhandled Exception: Bad state: Too many elements get function flutter deployed contract
트랜잭션 전송 전 contract.function('safeTransferFrom') 에서 나오는 오류다.
이게 뭔가해서 삽질을 하다가, 다른 function 을 호출 하면 정상적으로 넘어가는것을 보고 깨달았다.
ERC721에는 safeTranferFrom이 2개다. (from, to, tokenId), (from, to, tokenId, data) 파라미터를 3개와 4개를 받는 함수가 기본적으로 생성이된다.
두 함수가 모두 포함된 ABI를 이용해서 받은 DeployedContract에 있는 같은 이름의 function 을 가져오는것에 문제가 있는것이다.
왜 이런처리는 안해놓은것인가.....
해결방법은 사용하지 않는 파라미터 4개를 받는 함수를 ABI에서 지우고 다시 실행하니 잘 넘어간다.
Flutter에서는 이름이 중복되는 함수를 사용 할 수 없다!!!
반응형
'개발 > Flutter' 카테고리의 다른 글
Flutter 안드로이드 빌드 (debug, release) 커멘드 (0) | 2023.06.19 |
---|---|
[Flutter] - no-sound-null-safety 에러 (0) | 2023.05.12 |
Flutter (플러터) - textfield 입력시 labelText안보이기 (0) | 2022.06.21 |
Flutter (플러터) - 입력키보드 다른 곳 누르면 사라지게하기 (0) | 2022.06.21 |
Flutter(플러터) - ios 빌드 오류 ( CocoaPods not installed. Skipping pod install flutter) (3) | 2022.03.04 |