일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- nest.js설명
- 스마트컨트렉트테스트
- 컨트렉트 배포 자동화
- SBT표준
- multicall
- 컨트렉트 동일한 함수이름 호출
- 러스트 기초
- 머신러닝기초
- Vue.js
- ambiguous function description
- git rebase
- 스마트컨트렉트 예약어 함수이름 중복
- ethers typescript
- rust 기초
- chainlink 설명
- Vue
- ethers type
- 스마트 컨트렉트 함수이름 중복
- ethers
- 러스트기초
- 스마트컨트렉트프록시
- ethers websocket
- ethers v6
- vue기초
- 스마트컨트렉트 함수이름 중복 호출
- 체인의정석
- 러스트 기초 학습
- nestjs 튜토리얼
- 깃허브명령어
- 프록시배포구조
Archives
- Today
- Total
체인의정석
ethers에서 블록태그(block tag) 사용하기 본문
728x90
반응형
과거 특정 시점에서의 특정 값을 조회 할 때
이벤트 말고도 조회가 가능한 방법이 있다.
바로 조회 함수에 특정 블록번호를 넣어주는 블록태그 blocktag이다.
ethers에서 들어가서 보면 다음과 같이 정의가 되어 있는 것을 확인할 수 있으며
for(let i = 0; i < blockNumberList.length; i++){
const blockNumber = blockNumberList[i]
const response = await contract.foo({
blockTag: blockNumber
})
}
이런식으로 사용해 주면 되는데
blockTag: 조회하고자 하는 블록번호
이렇게 넣어주게 되면 해당 블록에서의 컨트렉트 함수를 조회해서 가져올 수 있다.
만약 인자 값이 들어간 경우라면
for(let i = 0; i < blockNumberList.length; i++){
const blockNumber = blockNumberList[i]
const response = await contract.foo(
input 1,
{
blockTag: blockNumber
})
}
위와 같이 블록태그를 걸어줄 수 있다.
728x90
반응형
'블록체인 > Ethers & web3' 카테고리의 다른 글
hardhat 에서 HeadersTimeoutError: Headers Timeout Error 해결 법 (0) | 2023.07.10 |
---|---|
ethers에서 함수를 못찾을 때 , 오버로딩 문제 체크해 보기 (0) | 2023.05.23 |
web3의 getPastEvent가 있다면ethers에는 query filter가 있다. query filter 설명 (0) | 2023.05.15 |
스캔에 뜨지 않는 EVM 에러 코드 확인하는 법, hardhat console 사용 (0) | 2023.03.23 |
hardhat node 버전 맞추기 + 여러 컨트렉트 소스 한번에 컴파일하기 (0) | 2023.03.17 |
Comments