2017-07-31 65 views
5

我想开始在MacOSX上复仇Web3.js返回“无法找到模块‘WEB3-requestManager’”

我安装使用以下命令WEB3使用复仇Web3.js与节点6.11.1:

npm install web3

然后我推出这个 - 很明显 - 简单点的命令:

Web3 = require('web3');

那么,它返回以下错误:

module.js:471 
    throw err; 
    ^

Error: Cannot find module 'web3-requestManager' 
    at Function.Module._resolveFilename (module.js:469:15) 
    at Function.Module._load (module.js:417:25) 
    at Module.require (module.js:497:17) 
    at require (internal/module.js:20:19) 
    at Object.<anonymous> (/Users/fremente/Dropbox/Influx Design/Web htdocs/ethereum/node_modules/web3/packages/web3-core/src/index.js:26:22) 
    at Module._compile (module.js:570:32) 
    at Object.Module._extensions..js (module.js:579:10) 
    at Module.load (module.js:487:32) 
    at tryModuleLoad (module.js:446:12) 
    at Function.Module._load (module.js:438:3) 

看起来它需要一些模块(例如, 'web3-requestManager'),它们并未与软件包一起安装。

这是我的package.json

{ 
    "name": "ethereum", 
    "version": "1.0.0", 
    "description": "", 
    "main": "index.js", 
    "dependencies": { 
    "ethereumjs-testrpc": "^4.0.1", 
    "solc": "^0.4.13", 
    "web3": "^1.0.0-beta2" 
    }, 
    "devDependencies": {}, 
    "scripts": { 
    "test": "echo \"Error: no test specified\" && exit 1" 
    }, 
    "author": "", 
    "license": "ISC" 
} 

任何想法?难道我做错了什么?

+0

只是为了完成,这个问题在图书馆的git回购有一个公开问题:https://github.com/ethereum/web3.js/issues/966 – cyrix

+0

我打开该问题 –

+0

我解决了安装0.4版本 –

回答

4

的问题来自使用WEB3的测试版目前的不稳定,目前正在你有两个选择一个比较大的发展,

  • 要么使用一个稳定的版本0.23我想什么这样

  • 或手动安装所有需要的依赖关系,我不推荐这种解决方案对于稳定DAPP因为事情是真的目前不稳定

+0

目前它非常不稳定,但我使用'Web.js''v1.0-beta18'工具(它具有正确的依赖关系)来组装一个示例回购:https://github.com/ leopoldjoy/react-ethereum-dapp-example –

+1

你是正确的,我在上面的解决方案中说过,你可以手动安装所有的依赖和web3 v1.0将工作,但是,我注意到一些边缘案例,即使安装完所有的依赖关系后,老实说像这些问题是一个明确的指标,目前web 1.0v不应该用于任何生产代码。 –

6
npm install ethereum/web3.js 

应该解决您的问题

0

我面临这个问题,确切用:[email protected]

我已经通过升级节点从v6.11.3v8.9.4修复了这个问题。

我已经删除了node_modules文件夹并运行:npm install来重建模块。

我认为web3使用的功能只支持节点版本8.x.x.