使用Ethers.*
安裝Ethers.*:通過npm安裝Ethers.*庫。c*t { ethers } = require('ethers');c*t contractABI = []; // 合約ABIc*t contract = new ethers.Contract(contractAddress, contractABI, provider);調(diào)用合約函數(shù):使用合約實例調(diào)用函數(shù)。c*ole.log(result);發(fā)送交易:創(chuàng)建和發(fā)送交易來執(zhí)行狀態(tài)變更
await tx.wait();監(jiān)聽事件:設(shè)置事件監(jiān)聽來響應合約事件。
contract.on('eventName', (arg1, arg2) => { c*ole.log(arg1, arg2);});使用Web3.*
安裝Web3.*:通過npm安裝Web3.*庫。c*t Web3 = require('web3');c*t contractAddress = '0x...'; // 合約地址調(diào)用合約函數(shù):調(diào)用合約的view或pure函數(shù)。
web3.eth.getBlockNumber(function (error, result) { c*ole.log(result);});發(fā)送交易:構(gòu)建和發(fā)送交易。 c*ole.log(transactionHash);contract.events.eventName().on('data', function(event) {});