12

我正在尝试在 macosx 上开始使用带有节点 6.11.1 的 Ethereum Web3.js

我使用以下命令安装了 web3:

npm 安装 web3

然后我启动这个 - 显然 - 简单的节点命令:

Web3 = 要求('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"
}

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

4

9 回答 9

12
npm install ethereum/web3.js

应该解决你的问题

于 2017-11-07T12:44:41.797 回答
6

问题来自使用 web3 的 beta 版本,它目前不稳定,目前正在大量开发中,您有两种选择之一,

  • 要么使用我认为的稳定版本 0.23 或类似的东西

  • 或手动安装所有需要的依赖项我不推荐此解决方案用于稳定的 dapp,因为目前情况确实不稳定

于 2017-08-01T17:10:12.337 回答
3

除了列出之外,我还通过删除node_modules文件夹、npm install再次运行和手动安装来解决它:web3jspackage.json

将依赖项添加到 package.json

"web3": "^1.0.0-beta.31"

重建模块

rm -rf node_modules
npm install

手动安装 web3

npm install web3@1.0.0-beta.31
于 2018-03-26T16:20:38.853 回答
1

npm install ethereum/web3.js解决了我的问题。

希望它也适合你。

于 2019-01-15T16:24:41.347 回答
1

在我的 Windows 10 机器上安装 git 有帮助。没有它,依赖项无法正确安装。https://git-scm.com/downloads

于 2018-04-27T13:21:21.230 回答
0

我正面临着这个确切的问题:web3@1.0.0-beta.26

我已通过将节点从升级v6.11.3v8.9.4.

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

我认为 web3 正在使用仅受节点版本 8.xx 支持的功能

于 2018-01-19T23:19:43.070 回答
0

web3-requestManager通过固定到1.0.0-beta.29版本解决了这个问题。以前它是安装1.0.0-beta.2.

于 2018-03-13T15:29:39.703 回答
0

我目前使用的是 web3 1.0 版本。我也在使用 macOS。如果你也在使用这个版本,试试这个:

Running npm install ethereum/web3.js
于 2018-05-12T07:44:33.897 回答
0

将“react-scripts”从“5.0.0”降级到“4.0.3”对我有用。

于 2022-02-11T15:04:02.633 回答