Lernen, Dapps zu entwickeln, aber Probleme beim Testen

Ich fange an, die Vor- und Nachteile der DApp-Entwicklung zu lernen. Ich habe ein paar Tutorials befolgt - ich kann jetzt Solidität lesen!. Ich möchte versuchen, einige vorhandene Dapps zu modifizieren, um ein Gefühl dafür zu bekommen, was vor sich geht, insbesondere in Multiplayer-Spielen.

Ich habe die „on-chain-chess“-Dapp https://github.com/ise-ethereum/on-chain-chess gefunden und versuche von hier aus als Trainingsbeispiel zu beginnen (d. h. durch Codieren von Dame und/oder Fantasy Schach von dort).

Ich habe jedoch Probleme, wenn ich versuche, die dapp zu verwenden. Ich habe testrpc gestartet und npm installiert/npm gestartet. Ich habe ein paar Warnungen während der Bauphase.

Beim Öffnen von index.html passiert nichts, wenn ich auf "Spiel erstellen" klicke. Ich habe keine Reaktion auf dem testrpc und keine Reaktion auf den Browser. Wahrscheinlich übersehe ich etwas, was ich nicht verstehe. Ich dachte, dass dies mit der Mining-Zeit zu tun hat, aber es scheint nicht die Antwort zu sein.

Gibt es etwas Offensichtliches? Gibt es ein gutes Tutorial, das diese Art von Problemen erklärt? Oder sollte ich es mit einem anderen Projekt versuchen?

Antworten (1)

Sehen Sie irgendwelche Fehlermeldungen, wenn Sie die Konsole öffnen? Ich konnte es zum Laufen bringen, ich benutzte npm install, gefolgt von npm start. Wenn Sie ausführen npm start, sollten Sie viel Bewegung auf testrpc sehen, weil die Verträge bereitgestellt werden, haben Sie das gesehen? Außerdem sollten Sie über http://localhost:8080/ darauf zugreifen . Es gibt auch einige einfachere Tutorials mit Truffle , falls das hilft.

Hallo, danke für deine Antwort. Ich habe zwei Warnungen, wenn ich npm install ausführe (Peer-Abhängigkeiten von Mocha. Ich habe versucht, package.json zu ändern, aber es lief schlechter) Wenn ich npm start ausführe, sehe ich tatsächlich eine Menge Ausgaben auf dem testrpc-Terminal. Ich gehe zu localhost:8080/webpack-dev-server/index.html , was „App bereit“ anzeigt, aber das Klicken auf „Neues Spiel starten“ oder „Spiel beitreten“ hat keine Wirkung, weder in meinem Browser noch auf der testrpc-Konsole. Ich habe versucht, zu localhost:8080 zu gehen und die gleichen Ergebnisse zu erhalten, obwohl sich die URL ändert, wenn ich auf (/#/initializeGame, /#/joinGame) klicke, bleibt der Bildschirm schwarz.
Wenn Sie die Seite öffnen, können Sie F12 verwenden, um das Konsolenprotokoll auf der Seite anzuzeigen? Normalerweise werden Sie einige Fehler sehen, wenn die Web3-Verbindung nicht funktioniert, was der Fall ist. Benutzt du auch Metamask? Denn Sie müssten sicherstellen, dass Metamask in diesem Fall auf testrpc eingestellt ist.
Sie haben Recht, ich habe tatsächlich einen Fehler im Konsolenprotokoll: Fehler: Das MetaMask-Web3-Objekt unterstützt keine synchronen Methoden wie eth_call ohne Callback-Parameter. Ich habe versucht, das Repo erneut zu klonen und es mit Chrome und Firefox zu versuchen, aber derselbe Fehler bleibt bestehen. Metamask ist auf localhost:8545 eingestellt, wo der testrpc laufen sollte. Die innerste Funktion, die den Fehler auslöst, befindet sich in angle.js und die Zeile lautet return instanceInjector.invoke(provider.$get, provider, undefined, serviceName).
Ich habe es endlich geschafft, die Website anzuzeigen und Reaktionen zu erhalten, indem ich Metamask deaktiviert habe. Ich bin mir nicht sicher, warum es mit Metamask nicht funktionieren würde ... Jetzt bekomme ich einen Gasfehler, wenn ich ein Spiel erstellen möchte, unabhängig von der Gasgrenze, die ich beim Start von testrpc festgelegt habe ... Aber ich bin froh Fortschritt zu sehen.
Hmm, haben Sie darauf geachtet, das 12-Wörter-Passwort für testrpc zu verwenden, wenn Sie Metamask verwenden? Der Gasmangel-Fehler bezieht sich darauf, wie viel Gas Sie als Kontobenutzer senden. Es könnte sich also auch auf die Art und Weise beziehen, wie ihre Benutzeroberfläche erstellt wurde, wenn Sie Ihr Gas nicht mit Metamask anpassen können. Ich empfehle jedoch die Trüffel-Dapps. Ich denke, sie sind viel einfacher in Gang zu bringen und können Ihnen einige einfachere Designs zeigen, mit denen Sie beginnen können. Außerdem habe ich auch gute Dinge über CryptoZombies ( cryptozombies.io ) gehört.