您当前的位置: 首页 > 
  • 0浏览

    0关注

    1477博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Truffle Openzeppelin 实例(2022版)

软件工程小施同学 发布时间:2022-03-31 14:49:02 ,浏览量:0

1. 构建目录结构

打开cmd,新建一个文件夹,ooxxb,进入文件夹

2. 用truffle初始化项目

输入

truffle init
3. 引入Openzeppelin

github地址

npm install @openzeppelin/contracts

可以看到项目文件夹下多了一个文件夹node_modules

package.json文件里也多了一个依赖包,说明引入成功!在这里插入图片描述

 

4. 新建代币的solidity代码文件

在contracts文件夹下新建一个文件OoxxCoin.sol,内容为:

// SPDX-License-Identifier: MIT
pragma solidity >=0.4.22  contract = instance) 回车
  • 再输入 contract.name(); 如图,可以看到结果正确!在这里插入图片描述
  • 10. 代币使用

    在truffle develop命令后出现的10个虚拟账号,默认部署合约用的是第一个地址来存放发行总量,接下来用前3个虚拟账号来模拟操作

    • 0xc5965f591942d77e06e8a992de650d0044034efd
    • 0xd3648210093776256360315f16f443a67b33e5ff
    • 0x221b2b110afc7261347ebddb738a37338724a673在这里插入图片描述
    10.1 查询代币发行总量

    输入

    contract.totalSupply();
    

    在这里插入图片描述

    10.2 查询某个账户余额
    • 查询第一个账户0xc5965f591942d77e06e8a992de650d0044034efd余额
    contract.balanceOf("0xc5965f591942d77e06e8a992de650d0044034efd");
    

    PS:默认部署合约用的是第一个地址来存放发行总量,所以可以查到余额等于发行总量。在这里插入图片描述

    • 查询第二个账户0xd3648210093776256360315f16f443a67b33e5ff余额
    contract.balanceOf("0xd3648210093776256360315f16f443a67b33e5ff");
    

    这次就查到余额为0了在这里插入图片描述

    • 查询第三个账户0x221b2b110afc7261347ebddb738a37338724a673余额
     contract.balanceOf("0x221b2b110afc7261347ebddb738a37338724a673");
    

    在这里插入图片描述 同样余额为0

    10.3 给第二个账户打6000代币

    输入

    contract.transfer("0xd3648210093776256360315f16f443a67b33e5ff",6000);
    

    查询第二个账户余额,有6000,结果正确

    contract.balanceOf("0xd3648210093776256360315f16f443a67b33e5ff");
    

    在这里插入图片描述 查询发行量余额,666666-6000=66066,结果正确

    contract.balanceOf("0xc5965f591942d77e06e8a992de650d0044034efd");
    

    在这里插入图片描述 over,enjoy!

    关注
    打赏
    1665320866
    查看更多评论
    立即登录/注册

    微信扫码登录

    0.0443s