Zuerst installiere ich den Code wie npm install web3
im Terminal, während das erste Problem auftritt ( Environment1 ). Zweitens ändere ich die Version von node
、npm
(wie Envirnment 1 => Environment2 ) und tippe auf denselben Code npm install web3
ist OK (Version von web3
ist 0.20 .6 ). Zuletzt, als ich web3.eth.methods in meinem Projekt ( Environment2 ) aufrufe, habe ich festgestellt, dass das zweite Problem auftritt, das this.web3
definiert ist, aber das this.web3.eth.methods
ist undefiniert, obwohl ich die Umgebung 2 über npm install web3
oder konfiguriere yarn add web3
.
Umgebung1 System:Ubuntu16.04; Knoten:8.9.0; npm:5.6.0;
Problem 1, da das Problem wie folgt beschrieben wird: /.npm/_cache/tmp/git-clone-da91fc96/.git:Permission denied
Umgebung2- System:Ubuntu16.04; Knoten: 6.11.0; npm: 3.11.0; web3: 0.20.6;
Ausgabe 2 als Gefährte Ich tippe in den Code wie console.log( this.web3
) in project und teste über das Entwicklertool in Google, das Bild als Gefährte:
Ich rufe den Vertrag auf, indem ich var Contract = new this.web3.eth.contract(artifacts.abi,'contract_address');
den Vertrag im Projekt drucke und über das Entwicklertool in Google teste, das Bild als Gefährte:
Und ich rufe eine Methode wie getValue()
is undefined auf und tippe in die Codeanzeige, dass console.log(window.escrowContract.methods);
die Methoden undefined als Fellow angezeigt werden:
Ich weiß nicht, ob die Beziehung zwischen zwei Problemen besteht, und ich schaue einige Artikel und Tutorials durch, ihre Methoden funktionieren bei mir nicht. Und ich kenne die Version von web3 unter der Version1 ( https://web3js.readthedocs.io/ en/1.0/web3-eth.html ) , sollte die Methode zum Aufrufen des Vertrags var Contract = new this.web3.eth.Contract(artifacts.abi,'contract_address');
lauten .C
c
Was ist die Methode kann es lösen?
Ich habe dieses Problem durch zwei Codes als Gefährte gelöst: 1. npm cache clear --force
2.npm install web3
Erklärung meiner Meinung nach als Kollege: Erstens tritt das erste Problem auf, weil der Cache npm
in meinem Computer gefüllt ist. Bevor ich den Cache lösche npm
, bediene ich das npm install web3
Problem im Stammverzeichnis. Nachdem ich das getan habe, npm install web3
ist das in Ordnung. Sencond, bevor ich operiere 'npm install web3'
, installiere ich immer web3 durch 'yarn add web3'
, aber nach vollständiger Installation tritt Issue2 auf. Ich habe das Gefühl, dass die Installation von web3 durch Garn unausgegoren ist. Von da an tippe ich wie gesagt auf zwei Codes, die beiden Probleme treten nicht auf. Diese Erklärung stellt nur meine Meinung dar, ich hoffe, sie ist nützlich für Sie.
Allen Kris
Allen Kris
Allen Kris