在前端开发中,我们经常使用 npm 包来加速开发进程和提高代码质量。@nomiclabs/buidler 是一个专门为以太坊应用而设计的工具,可以帮助我们开发,测试和部署以太坊智能合约。在本教程中,我们将介绍如何安装和使用该 npm 包。本教程适用于有一定前端开发经验的读者。
什么是 @nomiclabs/buidler
@nomiclabs/buidler 是一款基于 Typescript 的以太坊开发工具,与 Truffle 类似。它提供了开发、部署和测试以太坊智能合约的便捷性和高度灵活性,可以帮助我们加速开发周期。值得一提的是,@nomiclabs/buidler 社区非常活跃,有许多优秀的插件可供选择,以便于我们自定义配置和实现多样化的开发需求。
安装 @nomiclabs/buidler
由于 @nomiclabs/buidler 是一个 npm 包,我们可以通过命令行安装它。
npm install --save-dev @nomiclabs/buidler
当然,我们也可以选择使用 yarn:
yarn add --dev @nomiclabs/buidler
添加配置文件
安装完 @nomiclabs/buidler 后,我们需要添加一个配置文件。可以选择手动添加或使用命令行生成。手动添加方法如下:
- 在项目根目录创建
buidler.config.js
文件; - 填写以下基础配置:
module.exports = {}
生成配置文件的命令如下:
npx buidler init
生成后的默认配置文件如下:
-- -------------------- ---- ------- -------------- - - --------- - ---------- - ---- ----------------------- - -- ----- - -------- ------- - --展开代码
创建合约项目
创建合约项目的步骤如下:
- 在项目根目录
contracts
目录下创建 Solidity 文件,例如HelloWorld.sol
; - 在
HelloWorld.sol
中编写代码; - 在
buidler.config.js
中添加编译任务:
-- -------------------- ---- ------- -------------- - - -- --- ---- ------ - -------- -------------- ---------- ------------- -- -- ---- --------- - ---------- - - -------- ------- - - - --展开代码
部署合约
假设我们有一个名为 HelloWorld
的合约,在项目根目录中使用以下命令进行部署:
npx buidler run scripts/deploy.js --network localhost
其中,deploy.js
中应该有合约部署脚本。示例代码如下:
-- -------------------- ---- ------- ----- -------- ------ - -- ------- ----- ---------- - ----- -------------------- ------------ ---------- --------- ---- --- ---------- ---------------- -- -- -- ---------- -- ----- ---------- - ----- ---------------------------------------- ----- ---------- - ----- -------------------- ----------------------- ---------- -------------------- - ------ -------- -- ---------------- ------------ -- - --------------------- ---------------- ---展开代码
测试合约
使用 @nomiclabs/buidler 进行合约测试非常简单,我们只需要安装 chai
和 @nomiclabs/buidler-ethers
,然后在测试脚本中使用即可。命令如下:
npm install --save-dev chai @nomiclabs/buidler-ethers
添加测试脚本,示例如下:
-- -------------------- ---- ------- ----- - ------ - - ---------------- ---------------------- ---------- - ---------- ------ --- -------- --------- ----- ---------- - ----- ---------- - ----- ---------------------------------------- ----- ---------- - ----- -------------------- ----- ---------------------- ------------ ----------------------------------------- --------- --- ---展开代码
接着,在 buidler.config.js
中添加配置:
-- -------------------- ---- ------- -------------- - - ------ - -------- -------------- ------ -------- -- -- ------ ------ - -------- -------- -- -- ---- ---------- - -- --------- --- --- ------- ------------------------ -- -- ------ --------- - ---------- - - -------- ------- - - -- -- ---- -------------- - --------- - -------- - - -- ------ - -------- -------------- ------ -------- -- -- ---- -------- ---------------------- -- ---- --------- - ---------- - ---- ----------------------- - - --展开代码
最后,在命令行中运行测试命令:
npx buidler test --network localhost
总结
在文章中,我们介绍了 @nomiclabs/buidler 这款专门为以太坊开发而设计的工具,并指导了如何安装和使用 @nomiclabs/buidler。我们通过编写示例代码,展示了如何部署和测试以太坊智能合约。希望这篇教程能够帮助开发者更好地理解 @nomiclabs/buidler,并运用它进行以太坊开发。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/203960