当前位置:主页 > 列表页 > 正文

如何优雅的在 Arbitrum 测试网上部署智能合约

2021-11-23 06:20 | 出处: Arbi爱好者

| 作 者Nina Rong


开始之前

开始之前由于 Arbitrum 网络完全支持 EVM,因此在上面部署合约就像在以太坊主网或任何支持 EVM 的公链一样简单,下面,我们将带领您参与这场 Layer 2 之旅。

(该教程属于入门级教程,推荐合约初学者查看)


1. 准备条件

1. 在rinkeby上的测试以太坊(可在https://faucet.rinkeby.io/处领取)

2. 电脑已安装npm。

3. solidity相关知识背景。


2. 本文概述

本文将使用 hardhat 来进行合约部署,如果您之前有过 hardhat 相关经验,那么部署过程将会非常简单。


3. 添hardhat安装

首先,如果您电脑上没有安装nodejs,那么需要先前往nodejs官网(https://nodejs.org/)下载安装,该安装步骤可在互联网多个地方找到,因此我们不再重复。

创建一个文件夹,进入并初始化项目:


之后,安装hardhat必要插件:


在跳出选择界面时,选择create a sample project即可。

之后,一个hardhat项目成功建立!项目文件如下:



4. 添合约编译和部署

进入contracts,可发现Greeter.sol文件,打开可发现代码如下:


如图所示,一个测试合约代码已生成!(在实际开发中,您可以编写任意符合您需求的代码,该教程以该demo为主。)

之后进入hardhat.config.js,修改module.exports为:


修改完成后(注:将你的私钥复制到上述位置以签名部署合约),退回到项目主路径,进行编译代码:


一切就绪!运行如下指令进行部署:


在部署完成后,将会有如下显示:


如果成功显示,那么恭喜,您成功部署了第一个l2合约!(地址将会与图中不一样)

现在,您可前往区块浏览器https://rinkeby-explorer.arbitrum.io/查看您部署的合约。

Ok,在一切结束后,我们来看看部署指令干了什么:

该指令中包含了scripts/sample-script.js,该文件存在函数如下:


里面包含了获得合约信息,以及部署编译器等功能。可以发现,合约首先通过函数获得了contractFactory,该factory包含了合约的abi以及bytecode,有了这些后我们可以通过发起交易来将合约部署到arbitrum测试网络。


5. 合约测试

为了保持谨慎,因此我们需要对合约进行测试以确认合约真的成功部署,且和我们期待一般运行。

进入test/sample-test.js,将函数修改如下(记得更改其中合约的地址为您部署的地址):


之后,重新回到主文件夹,执行命令:


如果执行结果出现passing,没有出现fail,那么恭喜,到这里,您的合约已经能稳定运行于arbitrum测试网中了!

如何了解更多 Arbtirum 内容


用户常用链接:

Arbitrum 项目网站 | OffchainLabs 网站

推特:@Arbitrum @OffchainLab

微博:@Arbitrum

微信公众号:OffchainLabs

使用手册:https://bit.ly/3h4iVs3

Discord:https://discord.gg/K4JJ7HNQ

测试币水龙头:https://faucet.rinkeby.io/

跨链桥:https://bridge.arbitrum.io/

生态版图:http://portal.arbitrum.one/


开发者常用链接:

请关注「用户常用链接」以及:

Github:https://github.com/OffchainLabs/arbitrum

开发者教程:

https://github.com/OffchainLabs/arbitrum-tutorials

英文文档:

https://developer.offchainlabs.com/

中文文档:

https://github.com/dysquard/Arbitrum_Doc_CN

作者郑重申明:截至发文时,作者与文中提及项目存在利益关系,特此告知。利益关系包括但不限于下述情况:本人为项目团队成员、本人是项目团队成员的直系亲属或配偶、参与投资该项目、持有该项目发行的股份或通证、参与做空或做多该项目、收取回报进行有偿撰文等。
相关文章