区块链开发之Truffle环境搭建

前言

truffle是以太坊目前最流行的一个开发框架,通过truffle我们可以开发基于以太坊的去中心化应用(Dapp)。这篇文章介绍如何安装truffle并运行第一个Dapp程序。
预备环境要求:

  • node 6.9.2
  • npm 3.10.9

nodenpm的安装可参考Ubuntu16.4环境下安装Node.js开发环境。

安装truffle

sudo npm install -g truffle@3.2.1

区块链开发之Truffle环境搭建_第1张图片

安装ganache-cli

sudo npm install -g ganache-cli

区块链开发之Truffle环境搭建_第2张图片

安装web3

sudo npm install web3

区块链开发之Truffle环境搭建_第3张图片

搭建第一个Dapp

在合适的路径下建立Dapp项目文件夹

sudo mkdir DappTest

进入项目文件夹

cd DappTest/

初始化truffle项目结构

truffle init webpack

区块链开发之Truffle环境搭建_第4张图片
自动下载项目模板和相关依赖,项目结构如下
区块链开发之Truffle环境搭建_第5张图片

修改app.js

app.js中找到引入web3的代码,修改为如下形式

window.addEventListener('load', function() {
  if (typeof web3 !== 'undefined') {
    console.warn("Using web3 detected from external source. If you find that your accounts don't appear or you have 0 MetaCoin, ensure you've configured that source properly. If using MetaMask, see the following link. Feel free to delete this warning. :) http://truffleframework.com/tutorials/truffle-and-metamask")
    window.web3 = new Web3(new Web3.providers.HttpProvider("http://localhost:8545")); //window.web3 = new Web3(web3.currentProvider);
  } else {
    console.warn("No web3 detected. Falling back to http://127.0.0.1:9545. You should remove this fallback when you deploy live, as it's inherently insecure. Consider switching to Metamask for development. More info here: http://truffleframework.com/tutorials/truffle-and-metamask");
    window.web3 = new Web3(new Web3.providers.HttpProvider("http://localhost:8545")); // http://127.0.0.1:9545
  }

启动ganache-cli

ganache-cli

区块链开发之Truffle环境搭建_第6张图片
该窗口不要关闭

编译部署Dapp

另外打开一个terminal

truffle migrate

区块链开发之Truffle环境搭建_第7张图片

启动Dapp

npm run dev

区块链开发之Truffle环境搭建_第8张图片

测试Dapp

打开浏览器,访问localhost:8080,出现以下页面
区块链开发之Truffle环境搭建_第9张图片
显示拥有10000METACoin,可以发送给其他账户,所有账户地址列表在之前启动ganache-cliterminal中可以找到
区块链开发之Truffle环境搭建_第10张图片
复制其中一个Account到网页上,并输入100MetaCoin,点击Send MetaCoin
区块链开发之Truffle环境搭建_第11张图片
可以当前账户的MetaCoin数量减少100。
至此搭建Truffle并部署测试第一个Dapp项目的教程完结。

你可能感兴趣的:(区块链,以太坊去中心化应用开发)