What the difference between ethers.ContractAt("", address) and ethers.Contract(address, abi, signer)?
hre.ethers.getContractAt("MyContract", contractAddress);: Gets a deployed instance of a contract, thats why it requires the address, and belongs to the hardhat environemnt (
ethers.Contract(address, abi, signer): Returns a new instance of the Contract attached to a new address. This is an ethersjs method.
There is not a
getContractAt on ethersjs