错误:找不到模块'ipfs'web3.min.js:1:155

时间:2018-03-19 01:15:41

标签: node.js npm ipfs

我无法使用节点模块ipfs.js
控制台显示错误:“无法找到模块'ipfs'”

Ubuntu 16.04.4 LTS

node --version == v8.10.0
npm --version == 5.6.0
ipfs version == 0.4.13

我的package.json:

{
  "scripts": {
    "dev": "lite-server",
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "lite-server": "^2.3.0"
  },
  "dependencies": {
    "ipfs": "^0.28.2",
    "web3": "^0.20.6"
  }
}

我的app.js:

const IPFS = require('ipfs')
const node = new IPFS()
// // set the provider you want from Web3.providers
web3 = new Web3(new `Web3.providers.HttpProvider("http://127.0.0.1:8545"));`

当我在命令行中运行时,它起作用:

> const IPFS = require('ipfs')
undefined
> const node = new IPFS()
undefined
> Swarm listening on /ip4/127.0.0.1/tcp/4003/ws/ipfs/QmYwqrDJCQEiY2fijnwpPhhsG5w8rVxCTjK7duxtPyt24J
Swarm listening on /ip4/127.0.0.1/tcp/4002/ipfs/QmYwqrDJCQEiY2fijnwpPhhsG5w8rVxCTjK7duxtPyt24J
Swarm listening on /ip4/192.168.2.103/tcp/4002/ipfs/QmYwqrDJCQEiY2fijnwpPhhsG5w8rVxCTjK7duxtPyt24J

1 个答案:

答案 0 :(得分:0)

我能够解决我的问题。 我没有使用节点的经验,所以我完全混淆了它在服务器端和客户端使用问题上的使用。我的意图是在浏览器中使用ipfs

我正在使用松露框架创建一个Dapp,并且松露提供了一个" web3.min.js"文件,这个库与" var ipfs = require(' ipfs')冲突。

解决方案很简单,我只在浏览器中使用js-ipfs库:

tf.make_template

现在我的代码是:

我的HTML:

<script src="js/web3.min.js"></script>
<script src="https://unpkg.com/ipfs/dist/index.min.js"></script>
<script src="js/myjs.js"></script>

我的app.js:

var web3 = new Web3(new Web3.providers.HttpProvider("http://127.0.0.1:8545"));
console.log(web3);
console.log(Ipfs);