let 账户地址="0xbD2D24c6Cd5dcA79F743f02F2313152e13191539";
let 账户私钥='c33ba308cae4a832e5dde4c85262a34d07d2d0fc6efb4c9f01bbd67b53aa043d';
//同步操作,拿必要数据
this.web3.eth.getTransactionCount(账户地址).then(res=>{
var 该账户交易数 = (res).toString(16);
var 函数参数 = this.abi专用转16进制工具.rawEncode(
//2个参数时用["uint","string"] [32,"abc"]这样的写法,其实就是数组
["string"], [this.input]
).toString('hex');
//使用私钥对交易信息进行签名
var 一条交易 = new this.包装成一条交易Tx({
nonce: '0x'+该账户交易数,
//gasPrice和gasLimit如果不知道怎么填,可以参考etherscan上的任意一笔交易的值
gasPrice: '0x77359400',
gasLimit: '0x295f05',
to: this.合约地址,
value: '0x0',//发送的金额,这里是16进制,单位wei
data: '0xfc36e15b'+函数参数
// 这是函数地址,如果不知道是什么 可以用remix获取
});
一条交易.sign(new Buffer(账户私钥, 'hex'));
//发起交易 访问合约的 可写函数
this.web3.eth.sendSignedTransaction('0x' + 一条交易.serialize().toString('hex')).then(res=>{
console.log(res)
});
})
访问合约中的可写函数
于 2022-01-23 15:41:11 首次发布