这个教程被很多人放到了很多网站上,我根据原文试着做了一遍,但是其中有很多地方出了问题,于是我就写个排雷帖,让大家知道哪些地方需要注意才能实现这个DApp。具体怎么开发要看步骤的话建议看原文,作者及地址如下
- 原文链接: https://learnblockchain.cn/2017/11/24/init-env/
- 版权声明: 原文采用 CC BY-NC-SA 3.0 许可协议。转载请注明出处!
下面说一下我的配置:
系统:Ubuntu 14.04
环境搭建:
安装Node
安装Truffle
安装Ganache
这些都没啥大问题,如果有问题,就是注意Node的版本,一定要尽量新的版本,否则后面有的安装会不成功。
我的node版本是9.8.0,npm版本是5.6.0.
接着按照步骤来
创建项目——>编写智能合约——>编译部署
编写智能合约我一开始是用的solidityIDE,但是不知道怎么保存的全是乱码,于是果断换回vim编写。
编译执行完后要部署,部署的时候一定要打开ganache,并且确定网络开启,不然就会报错。
这里给大家贴个ganache的安装方法
wget https://github.com/trufflesuite/ganache/releases/download/v1.0.1/ganache-1.0.1-x86_64.AppImage //下载ganache chmod +x ganache-1.0.1-x86_64.AppImage //修改权限 sudo ./ganache-1.0.1-x86_64.AppImage //启动ganache
确定Ganache启动后truffle migrate部署。
然后编写测试用例并运行。只要确定ganache开启应该就不会报错,我就是因为ganache断开连接了,于是一直报错,后来重启ganache就好了
接下来写web页面部分,跟着步骤写就行,改的只有app.js这个文件。
安装MetaMask
这是一个以太坊轻量级插件,需要*从外网下,CSDN的下载页面有可以下载的,下载后在Google Chrome扩展程序的开发者模式下拖过去就安装了,安装后chrome浏览器右上角会有小狐狸标志。
继续跟着步骤注册账号……这些都没啥问题。
安装和配置lite-server
在这一步之后,不要急着执行,这里有个大雷需要排除掉。如果你急着执行就会发现开启的网页只有一个标题,其他内容都显示不出来,我用chrome的F12检查的时候给的提示是:
没办法,找源码的index.html看了下,发现源码给的script地址不太对,那个地址如果能*的人来说没问题,但是我的网络没*,于是只能更改CDN了~国内比较好的CDN网站也有,我是从bootcdn上找的。将标出部分修改成"https://cdn.bootcss.com/jquery/1.12.4/jquery.min.js " 保存后你就会发现图片正常显示了。我还是用的1.12.4版本,最新的3.3.1版本也报错,干脆省事点,用原文给的版本吧。
本博客只是自己编写部署DApp心得,并不一定全面,可能有些我没遇到的问题,大家也可以评论交流。