本教程使用以太坊的truffle框架在testrpc環(huán)境中模擬
系統(tǒng):Mac OS (windows系統(tǒng)只作為參考)
1. 首先安裝nodejs
?到官網(wǎng)下載安裝即可??http://nodejs.cn/download/
安裝之后在終端查看是否安裝成功:
$ node -v
如順利出現(xiàn)版本信息,就表示成功了(失敗的可能性很小)
2.cpm使用淘寶鏡像
安裝nodejs中內(nèi)置npm,但是國內(nèi)使用不暢,需要使用淘寶鏡像——cnpm
打開終端執(zhí)行下方命令
$ npm install -g cnpm --registry=https://registry.npm.taobao.org
*-g表示可以全局使用cnpm? 詳情查看:https://npm.taobao.org/
3.安裝智能合約框架truffle
$ cnpm install -g truffle
4.安裝模擬環(huán)境testrpc
$ cnpm install -g testrpc
5.至于IDE工具 建議使用Visual Studio
6.Clone項(xiàng)目代碼
找個(gè)地方 從git上clone代碼 地址:??
? 項(xiàng)目名為:blockChain
$ git clone??https://github.com/trufflesuite/truffle-init-webpack? blockChain
clone完成之后 進(jìn)入項(xiàng)目 通過cnpm安裝一些必要的庫
$ cd blockChain
$ cnpm install
7.開啟模擬環(huán)境testrpc
在6的基礎(chǔ)上繼續(xù)命令操作:
$?testrpc
*開啟模擬環(huán)境不一定要在6的基礎(chǔ)上(blockChain目錄)中執(zhí)行,由于后面還有其他操作需要在此執(zhí)行,所以就不要關(guān)閉終端或切換目錄了
這個(gè)模擬環(huán)境開啟之后 需要留意之后的打印信息:
成功的標(biāo)志是出現(xiàn):
Listening on localhost:8545
不一定是 8545 這個(gè)端口,對(duì)這個(gè)端口留意一下,后面可能會(huì)用上
8.編譯(compile)和部署(deploy)合約
$ truffle compile
$ truffle deploy
編譯和部署過程只要不出現(xiàn)Error就表示成功了
9.開啟nodejs服務(wù),用來服務(wù)前段頁面的
$ npm run dev
*此處使用的是npm,也可以使用cnpm? 此nodejs服務(wù)也可以不用,如果只開發(fā)合約部分,可以使用truffle的console調(diào)試,truffle的console后續(xù)會(huì)講到
開啟成功之后打印信息中會(huì)有內(nèi)容
Project is running at http://localhost:8080/
在瀏覽器中訪問?http://localhost:8080/
如果打開的頁面跟下方圖片差不多(我做了中文便于觀察) 在“你當(dāng)前擁有9726以太幣”這個(gè)位置你的應(yīng)該是: you have 10000 META

如果1000沒有顯示出來,那你應(yīng)該會(huì)碰到一個(gè)彈窗:

如果有這個(gè)彈窗說明沒有正確配置,解決彈窗:
打開項(xiàng)目,打開下圖中的文件:

打開之后內(nèi)容如下:

找到這行代碼:
window.web3 = new Web3(new Web3.providers.HttpProvider
檢查這里面的地址 :http://127.0.0.1:8545 和第7步打印的地址和端口是否相同
在第7步也提醒了諸位要注意這個(gè)端口 其實(shí)上面貼圖代碼里的端口是9545,這個(gè)截圖是我改正之后的,在你的代碼的這個(gè)位置把端口改為和第七步的端口一致就OK了
*localhost 就是127.0.0.1? ?localhost:8545和127.0.0.1:8545一樣的效果
修改保存之后重復(fù)8,9步驟,再次打開網(wǎng)頁輸入第9步中打印的網(wǎng)絡(luò)地址:localhost:8080
如果還出現(xiàn)彈窗,檢查app.js改動(dòng)后是否保存
成功的標(biāo)志就是沒有彈窗,頁面信息中有 “you have 10000 META!”