概述
truffle 是世界级的以太坊开发框架
•内置智能合约编译、连接、开发和二进制管理
•快速开发的自动化合约测试
•脚本、可扩展性部署和迁移框架
•用于部署到任意数量的公网和私网的网络管理
•为合约通信提供交互式控制台
创建项目
truffle init
目录结构
•contracts: 存放合约
•migrations:存放部署脚本
•test:测试文件
•truffle-config.js: 配置文件,配置不同网络
创建合约
pragma solidity ^0.4.24;
contract SimpleStorage{
uint storedData;
function set(uint x) public{
storedData =x;
}
function get() public view returns (uint){
return storedData;
}
}
编译合约
生成build/contract 编译文件
truffle compile
执行编译之后,会生成build文件夹,里面会有abi、bytecode、network
部署脚本
const SimpleStorage = artifacts.require(“SimpleStorage”);
module.exports = function(deployer) {
deployer.deploy(SimpleStorage);
};
部署网络
//你所要部署的网络的名字
ganacheNet: {
host: “127.0.0.1”, // Localhost (default: none)
port: 7545, // Standard Ethereum port (default: none)
network_id: “*”, // Any network (default: none)
},
结果展示
truffle migrate –network ganacheNet
此时交易已经产生到ganache
通过remix测试
at address 用 ganache 里面的 create address
Git 地址 https://github.com/potaxie/truffle-init