注意:本教程需要Truffle4.0或者是更高的版本
以太坊的智能合约只是代码,和我们的纸质代码不同,此合同需要非常精确的方式理解
如果合同编码不正确,我们的交易可能会失败,会导致gas的损失,更不用说浪费时间和精力
Truffle(从版本4开始)有一个内置的调试器,用于单步执行代码,所以当有错误出现的时候,可以准确的知道它是什么,在哪里发生错误,并且可以及时修复它
在本教程中,为我们将基本合同迁移到测试区块链中。
一个基本的智能合约
1.创建一个新的目录,在本地可以收集合同:
mkdir Truffle_pro
cd Truffle_pro
2.创建一个简单的truffle项目
这将创建诸如contracts/
和之类的目录migrations/
,并使用我们将合同部署到区块链时使用的文件填充它们。
3.使用编辑器atom打开当前的文件夹:atom ./
打开之后的atom的页面如下:
合同信息:contracts
配置信息:migrations,可以部署到区块链上面
4.在contracts/
目录中,创建一个Store.sol
使用以下内容调用的文件:
pragma solidity ^0.5.0;
//创建一个合同,名字是SimpleStoreage
contract SimpleStorage {
uint myVariable;
/* function set(uint x) public {
myVariable = x;
} */
function set(uint x) public {
myVariable = x;
}
function get() view public returns (uint) {
return myVariable;
}
}
这是我们将要调试的合同。虽然此文件的完整详细信息超出了本教程的范围,但请注意,有一个名为的合同SimpleStorage
包含一个数字变量myVariable
和两个函数:set()
和get()
。第一个函数在该变量中存储一个值,第二个函数在该变量中查询该值。
5.在migrations/
目录中,创建一个名为的文件store.js
,并使用以下内容填充它:
var SimpleStorage = artifacts.require("SimpleStorage");
module.exports = function(deployer) {
deployer.deploy(SimpleStorage);
};
该文件是允许我们将SimpleStorage
合同部署到区块链的指令。
6.在终端上面,编译智能合约
7.打开第二个终端并运行truffle develop
以启动直接构建到Truffle的开发区块链,我们可以使用它来测试我们的合同:

控制台将显示提示truffle(develop)>
。从这里开始,除非另有说明,否则将在此提示符下键入所有命令。
8.随着开发控制台的启动和运行,我们现在可以通过运行迁移将我们的合同部署到区块链:

好了,这个就是搭建truffle框架环境的流程了
下面是与基本智能合约的互动了
原文:https://www.cnblogs.com/yunxintryyoubest/p/10657619.html