Skip to main content

useContractStaticCall

Returns a function to static call a function on a contract.

Usage

import {useContract, useContractStaticCall} from '@incirlabs/react-ethooks';

export default function MyComponent() {
const MyContract = useContract('0x00', MyContractABI);
const staticTransfer = useContractStaticCall(MyContract, 'transfer');

const onSomeAction = async () => {
const result = await staticTransfer(['0x123', 1234, {from: '0x456'}]);

if (result.status) {
console.log(`Result: ${result.data}`);
} else {
console.log(`Error: ${result.error.message}`);
}
};
}

Parameters

contract

Contract instance returned from useContract or ethers.Contract

TypeDefault
ethers.ContractRequired

method

Function name to call on the contract instance.

TypeDefault
stringRequired

defaultArgs

Default arguments to pass to the function.

TypeDefault
(string | number)[]undefined

Returns

Function to execute the static call on the contract instance.

Type
(args: (string | number)[]) => Promise<ContractResult>