使用truffle-box部署合约到区块链并运行
使用truffle-box部署合约到区块链
本文介绍如何使用truffle结合vue框架部署智能合约
Truffle是以太坊最流行的开发框架,能够在本地编译、部署智能合约,使命是让开发更容易。这里尝试搭建环境,运行第一个区块链程序(Dapp)
1.安装全局truffle
npm install -g truffle // Version 3.0.5+ required. npm install -g ethereumjs-testrpc
2.安装truffle-box
首先我们需要去truffle官网
点击 boxes
里面有很多搭建好的脚手架,我选择了一个vue的脚手架。
truffle unbox wespr/truffle-vue
(安装过程很漫长,他是连带着依赖包一起安装的,有时候会失败,失败了可以自行安装依赖包)
3.装好后测试一下代码
执行:
testrpc
他会给你10个账户,以及对应的private keys
testrpc现在更名为Ganache CLI,其实是一个东西
执行vue
npm run dev
你会发现文件报错了
这个原因是因为我们还没有在该环境下部署合约
部署合约
新打开一个命令行
编译合约
truffle compile
部署合约
truffle migrate
如何你执行以上两行代码会打开truffle.js
那么在使用truffle命令时带上脚本的文件扩展名.cmd,例如truffle.cmd compile
随后在testrpc那个命令行中:
编译合约的命令行:
至此,合约部署完成
接下来刷新vue页面,
合约成功部署
但是当你点击sign up出现报错
原因是我们还需要另外一个工具 ------- MetaMask
这是以太坊的一个轻量级钱包,因为以太坊部署合约,执行合约都需要花费gas,所以我们需要安装MetaMask
在chrome中打开应用商店,在里面搜索MetaMask,安装它
然后按照他的要求的流程,这里就不多介绍了,
随后导入testrpc虚拟的钱包秘钥private key,他初始会给你100eth
networks选择我们本机的节点以及端口号8545
配置好之后刷新vue界面,再次点击sign up
MetaMask会弹出一个支付窗口,点击确认,合约便开始执行了。
至此,合约部署以及运行完成。
参考文档
https://www.npmjs.com/package...
https://github.com/ryhope/tru...
https://truffleframework.com/