前言
昨天我们学习了使用 web3.js 库查询链上区块和交易的用法,今天我们来介绍一下使用 web3.js 与智能合约的交互。在学习本节前,你应该对智能合约有一定的了解。
智能合约的生命周期包括 创建、发布、执行 以及 销毁。
- 创建:在 Remix 中编写智能合约,编译生成 ABI 和 字节码文件。
- 发布:对应 Remix 中的
Deploy按钮的功能,也即 web3.js 中合约实例上的deploy方法。 - 执行:对应web3.js 中合约实例上的
call和send方法。 - 销毁:在合约中使用
destruct(address)方法销毁指定合约。
因此我们在使用 web3.js 与合约交互时也包括这几个步骤。
与合约交互
应用程序二进制接口(ABI)
应用程序二进制接口(ABI)相当于智能合约暴露出来的标准接口,通过这个接口可以将智能合约转换为别的应用程序中的对象实例。通过这个对象实例就可以与智能合约进行交互。
💡 ABI对象实例
- 函数(functions)* type:函数类型。默认为
function,也可能是constructor* stateMutability:状态可变性。* payable* nonpayable* view* pure* inputs,outputs:函数输入输出的参数列表* name:函数名称* 事件(events)* type:event* inputs:输入对象列表,包括name,type,indexed* anonymous:是否为匿名的
创建合约
在一个合约中,我们可以编写的内容:函数,结构体,构造函数,状态变量,事件,枚举类型等。一个合约想要部署到区块链&#

本文介绍了如何使用web3.js库与智能合约进行交互,包括理解ABI、部署新合约、调用合约函数和事件。通过示例详细讲解了合约生命周期中的创建、发布和执行操作,为开发DApp提供了基础。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



