首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >相当于abi.encodeWithSignature的以太

相当于abi.encodeWithSignature的以太
EN

Ethereum用户
提问于 2021-10-10 11:03:36
回答 1查看 5K关注 0票数 9

我正在对链上的参数进行编码,以传递到新的OZ信标代理实例。为了进行验证,我需要通过ethers.js对相同的参数进行编码。

稳固功能:

代码语言:javascript
复制
abi.encodeWithSignature(string memory signature, ...) returns (bytes memory)

和我尝试过的醚函数,但是返回一个不想要的结果(更长,不以函数选择器开头)。

代码语言:javascript
复制
  const abiCoder = ethers.utils.defaultAbiCoder;
  const encoded = abiCoder.encode(...
EN

回答 1

Ethereum用户

发布于 2021-10-10 16:21:20

ethers.js v5就是这样做的:

代码语言:javascript
复制
let ABI = [signature];
let iface = new ethers.utils.Interface(ABI);
iface.encodeFunctionData(functionName, [param1, param2, ...]);

请注意,signature需要采用function functionName(type1 param1, type2 param2, ...)格式。

也在这里回答了一个GitHub问题

票数 16
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/111343

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档