其他分享
首页 > 其他分享> > Truffle初步和IPFS搭建

Truffle初步和IPFS搭建

作者:互联网

本文写于2018-12-29, 如今已经是2021年, 文章的truffle版本不是最新版

Truffle学习笔记

安装truffle, 注意: 虽然目前truffle最新版是 5.0.0, 但是经过我实践之后, 返现和v4有很多不同(比如: web3.eth.accounts; 都获取不到账户), 还是那句话:

“nodejs模块的版本问题会搞死人的 !”

目前4.1.15之前的版本都不能用了, 只能安装v4.1.15

npm install truffle@4.1.15

普通truffle项目

创建普通项目 truffle init即可

react

创建react项目 truffle unbox react, 可能会遇到错误npm WARN tar zlib error: unexpected end of file, 这是在 安装client依赖发生的错误.

切换到 client目录执行 npm install --no-package-lock安装即可

错误: npm WARN tar zlib error: unexpected end of file

参考: https://github.com/npm/npm/issues/19353#issuecomment-367329967

启动项目:

项目效果

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vTH50xD3-1620962617705)(./img/truffle-react项目运行效果.gif)]

修改合约中变量

  changeValue = async  () =>{
      var value = Number( this.refs.dataInput.value );  //获取输入框的值
      console.log(value);
      await g_instance.methods.set(value).send({ from: g_accounts[0] }); //调用合约中的set方法

      // Get the value from the contract to prove it worked.
      const response = await g_instance.methods.get().call();

      // Update state with the result.
      this.setState({ storageValue: response });

  };

-------------------------------
<div>
    <input  ref="dataInput" style={{width:200, height:30}}/>
    <button onClick={this.changeValue} style={{width:100, height:30}}>确定</button>
</div>

在这里插入图片描述

IPFS搭建

参考: https://blog.csdn.net/u013022210/article/details/80363107

直接展示ipns部署博客效果

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1DSoFA4i-1620962617710)(./img/ipns效果.gif)]
在这里插入图片描述

另外 可以通过nodejs和ipfs交互

npm install ipfs-http-client

标签:npm,IPFS,img,value,react,client,truffle,Truffle,搭建
来源: https://blog.csdn.net/yqq1997/article/details/116784449