Search code examples
javascriptethereumhardhat

Hardhat - How to get the block in timestamp in deployment file


I try to deploy my masterchef contract. I have 2 arguments to specify in the constructor (the token address and the actual block number in secondes). I use hardhat for doing this and I actually trying to get the value of the actuel block number in secondes ? How can I do this ?

const StakingRewards = await hre.ethers.getContractFactory("Masterchef");
const stakingRewards = await StakingRewards.deploy(token.address, block.timestamp);

Solution

  • You can get the timestamp of the previous block like this:

    // getting timestamp
    const blockNumBefore = await ethers.provider.getBlockNumber();
    const blockBefore = await ethers.provider.getBlock(blockNumBefore);
    const timestampBefore = blockBefore.timestamp;