如何将Web3js导入到Ionic/Angular项目中?
一段时间以来,我一直在尝试将Web3安装到我的Ionic v4项目中。当我为项目服务时,它不断抛出错误 这是我到目前为止所拥有的。 我使用如何将Web3js导入到Ionic/Angular项目中?,angular,ionic-framework,web3,Angular,Ionic Framework,Web3,一段时间以来,我一直在尝试将Web3安装到我的Ionic v4项目中。当我为项目服务时,它不断抛出错误 这是我到目前为止所拥有的。 我使用 npm install --save web3 这就是使用它的服务的样子,非常简单,仅用于测试 import { Injectable } from '@angular/core'; import Web3 from 'web3'; @Injectable({ providedIn: 'root' }) export class Web3Servic
npm install --save web3
这就是使用它的服务的样子,非常简单,仅用于测试
import { Injectable } from '@angular/core';
import Web3 from 'web3';
@Injectable({
providedIn: 'root'
})
export class Web3Service {
constructor() { }
web3 = new Web3(new Web3.providers.HttpProvider('https://ropsten.infura.io/v3/INFURA_API_KEY_HERE')); // removed api key for obvious reasons
logThings() {
console.log(this.web3);
}
}
以下是my package.json的外观:
{
"name": "webb3",
"version": "0.0.1",
"author": "Ionic Framework",
"homepage": "https://ionicframework.com/",
"scripts": {
"ng": "ng",
"start": "ng serve",
"build": "ng build",
"test": "ng test",
"lint": "ng lint",
"e2e": "ng e2e"
},
"private": true,
"dependencies": {
"@angular/common": "^7.2.2",
"@angular/core": "^7.2.2",
"@angular/forms": "^7.2.2",
"@angular/http": "^7.2.2",
"@angular/platform-browser": "^7.2.2",
"@angular/platform-browser-dynamic": "^7.2.2",
"@angular/router": "^7.2.2",
"@ionic-native/core": "^5.0.0",
"@ionic-native/splash-screen": "^5.0.0",
"@ionic-native/status-bar": "^5.0.0",
"@ionic/angular": "^4.0.0",
"@ionic/pro": "2.0.4",
"core-js": "^2.5.4",
"rxjs": "~6.3.3",
"web3": "^1.0.0-beta.39",
"zone.js": "~0.8.29"
},
"devDependencies": {
"@angular-devkit/architect": "~0.12.3",
"@angular-devkit/build-angular": "~0.12.3",
"@angular-devkit/core": "~7.2.3",
"@angular-devkit/schematics": "~7.2.3",
"@angular/cli": "~7.2.3",
"@angular/compiler": "~7.2.2",
"@angular/compiler-cli": "~7.2.2",
"@angular/language-service": "~7.2.2",
"@ionic/angular-toolkit": "~1.2.0",
"@types/jasmine": "~2.8.8",
"@types/jasminewd2": "~2.0.3",
"@types/node": "^10.12.18",
"codelyzer": "~4.5.0",
"jasmine-core": "~2.99.1",
"jasmine-spec-reporter": "~4.2.1",
"karma": "~3.1.4",
"karma-chrome-launcher": "~2.2.0",
"karma-coverage-istanbul-reporter": "~2.0.1",
"karma-jasmine": "~1.1.2",
"karma-jasmine-html-reporter": "^0.2.2",
"protractor": "~5.4.0",
"ts-node": "~8.0.0",
"tslint": "~5.12.0",
"typescript": "~3.1.6"
},
"description": "An Ionic project"
}
以下是我得到的错误:
[ng] ERROR in node_modules/web3-bzz/types/index.d.ts(28,27): error TS2580: Cannot find name 'Buffer'. Do you need to install type definitions for node? Try `npm i @types/node`.
[ng] node_modules/web3-bzz/types/index.d.ts(30,60): error TS2580: Cannot find name 'Buffer'. Do you need to install type definitions for node? Try `npm i @types/node`.
[ng] node_modules/web3-core/types/index.d.ts(20,22): error TS2307: Cannot find module 'net'.
[ng] node_modules/web3-providers/types/index.d.ts(23,22): error TS2307: Cannot find module 'net'.
[ng] node_modules/web3-utils/types/index.d.ts(71,54): error TS2580: Cannot find name 'Buffer'. Do you need to install type definitions for node? Try `npm i @types/node`.
[ng] node_modules/web3-utils/types/index.d.ts(72,48): error TS2580: Cannot find name 'Buffer'. Do you need to install type definitions for node? Try `npm i @types/node`.
[ng] node_modules/web3/types/index.d.ts(22,22): error TS2307: Cannot find module 'net'.
[ng]
[ng] i 「wdm」: Failed to compile.
我不完全确定我在这里做错了什么,所以非常感谢任何帮助。谢谢。嘿,Rohan刚过来看看有没有人有问题。我在github上看到您的帖子和我为您解决的答案,因此如果有人遇到此问题,请查看: -临时修理 下一版本中将部署此问题的修复程序,PR为: