美文网首页
[以太坊] OpenZeppelin 使用笔记

[以太坊] OpenZeppelin 使用笔记

作者: ytxing | 来源:发表于2018-09-27 15:42 被阅读70次

    拆箱(Unbox)模板应用

    新建空目录

    mkdir oz-workspace
    cd oz-workspace
    

    拆箱模板

    truffle unbox tutorialtoken
    

    安装 OpenZeppelin

    npm install openzeppelin-solidity
    

    创建合约

    可以说合约所需代码,已经非常非常精简了,例子还把构造参数全部写到了代码里,方便部署。

    pragma solidity ^0.4.24;
    
    import "openzeppelin-solidity/contracts/token/ERC20/StandardToken.sol";
    
    contract TutorialToken is StandardToken {
        string public name = "TutorialToken";
        string public symbol = "TT";
        uint8 public decimals = 2;
        uint public INITIAL_SUPPLY = 12000;
    
        constructor() public {
            totalSupply_ = INITIAL_SUPPLY;
            balances[msg.sender] = INITIAL_SUPPLY;
        }
    }
    
    

    启动Ganache

    或者启动开发链,我启动的是Ganache。
    注意核实配置truffle.js是否一致。

      networks: {
        development: {
          host: "127.0.0.1",
          port: 7545,
          network_id: "*" // Match any network id
        }
      }
    

    编译和部署合约

    部署脚本

    var TutorialToken = artifacts.require("TutorialToken");
    
    module.exports = function(deployer) {
      deployer.deploy(TutorialToken);
    };
    

    编译

    truffle compile
    

    部署

    truffle migrate
    

    交互

    把部署合约使用的私钥导入MetaMask,一般来说是Ganache的第一个。

    启动本地服务

    npm run dev
    

    浏览器访问

    地址是 http://localhost:3000

    浏览器页面

    原文参考

    https://truffleframework.com/tutorials/robust-smart-contracts-with-openzeppelin

    相关文章

      网友评论

          本文标题:[以太坊] OpenZeppelin 使用笔记

          本文链接:https://www.haomeiwen.com/subject/wxmeoftx.html