第27篇 联盟链 + metamask + remix 玩转智能合约

  • 时间:
  • 浏览:
  • 来源:互联网

本文环境:

      区块链:以太坊POA联盟链;

      操作系统:windows 64;

      节点版本:Geth1.9.14;

      浏览器:chrome;

      metamask版本:metamask-chrome-7.7.9;

      node版本:v10.14.0;

 

1.安装metamask

MetaMask是一款在谷歌浏览器Chrome上使用的插件类型的以太坊钱包,该钱包不需要下载,只需要在谷歌浏览器添加对应的扩展程序即可,非常轻量级,使用起来也非常方便。

1.1 安装chrome浏览器

下载谷歌chrome浏览器,并安装;

本文 chrome 版本:版本 87.0.4280.66(正式版本) (64 位);

1.2 安装metamask

本文从网络下载:metamask-chrome-7.7.9.zip;

进入chrome的扩展程序进行安装,点击"加载已解压的扩展程序";

metamask管理资产的基本操作,请大家自行网络搜索;

本文将 metamask 连接到联盟链;进入 metamask 设置界面,进入“网络”菜单,点击“添加网络”;

本文填入“网络名称”、“新增 RPC URL”、“ChainID(选填)”、“符号(选填)”四项;

导入账号后,即可以看到自己的资产;

 

2.使用remix部署智能合约

2.1 设置remix,链接到联盟链

打开remix官网:http://remix.ethereum.org/

在左侧选择菜单:“Deploy & run transactions”;

在 “ENVIRONMENT” 下拉框选择“Web3 Provider” ,此时自动弹出提示框:

在“web3 Provider Endpoint”输入自己的联盟链节点;

确认后,如果链接正常,会显示联盟链的网络号,以及在 “ACCOUNT” 显示该节点下的所有账号和余额;

2.2 使用metamask账号

在 “ENVIRONMENT” 下拉框选择“Injected Web3” ;

如果与metamask链接正常,此时在 “ACCOUNT” 会显示 metamask 的默认账号和余额,而不是显示所有metamask的账号;

如果想换账号,在metamask中重新选择不同账号,remix会自动转换到metamask的新账号;也就是说remix与metamask选中的账号同步;

3.部署智能合约

本文使用的合约在文档《第22篇 ERC20智能合约(0.6.0)》;没有做任何修改;

3.1 编译合约

在左侧选择菜单:“Solidity compiler”;

在“Compiler”下拉框选择正确的编译器版本,本文为0.6.0;

编译成功,会出现编译结果;如果有error或者warning,也会出现在编译结果区;

3.2 部署合约

在左侧选择菜单:“Deploy & run transactions”;

合适部署环境及部署账号;本文为第2节所做的设置环境;

选择需要部署的合约,本文为ERC20;

输入相应参数,本文的ERC20合约,需要 “NAME”、“SYMBOL” 两个参数;本文均设置为“aa”;

点击 “transact” 按钮进行合约部署;此时会自动弹出metamask界面;

点击“确认”,开始部署合约;

部署成功后,右侧区域会出现 “ debug ”信息,包含该笔合约部署交易的状态(status)及哈希值(hash)等关键信息;

左侧区域的 “Deployed Contracts” 下面会多出一条该合约的信息,该信息可以展开,显示合约内部参数及函数信息;

期中蓝色表示只读信息(不修改合约状态),橙色表示普通调用函数(会修改合约状态),红色表示有payable属性的函数(会修改合约状态,且调用时需要发送底层eth);

 

 

 

 

 

 

 

 

 

 

 

本文链接http://element-ui.cn/article/show-297230.aspx