
Rapid Ethereum Dappentwicklung
Trüffel eignet sich hervorragend für die Entwicklung von Smart Contracts für Solidität, aber es ist häufig eine Aufgabe, ein React -Frontend für einen intelligenten Vertrag aufzubauen. Next.js ist eine der einfachsten Möglichkeiten, eine solche Frontend zu erstellen, und die Integration zwischen TRUFFL und NEXT.JS ist das, was diese Kesselplatte zu demonstrieren versucht.
Es gibt zwei Hauptmerkmale:
Ein einfaches truffle init -Projekt wird als Basis verwendet (zusammen mit einem einfachen Beispielvertrag).
Ein Next.js -Projekt befindet sich im client -Verzeichnis mit einem Symlink zum Ausgangsordner der Vertrags -ABI -Definitionen. Die nächste App.JS -App bietet außerdem ein einfaches Skelett für die Verbindung mit dem intelligenten Vertrag in einem Netzwerk.
Weitere Informationen darüber, wie der Frontend funktioniert, lesen Sie die Readme.md im client -Verzeichnis.
Trüffel weltweit installieren.
npm install -g truffleLaden Sie die Box herunter. Dies kümmert sich auch um die Installation der erforderlichen Abhängigkeiten.
truffle unbox adrianmcli/truffle-nextFühren Sie die Entwicklungskonsole durch.
truffle develop Kompilieren und migrieren Sie die intelligenten Verträge. Beachten Sie in der Entwicklungskonsole, dass wir keine Befehle mit truffle vorbereiten.
compile
migrateFühren Sie den nächsten.js-Server für das Front-End aus. Intelligente Vertragsänderungen müssen manuell neu kompiliert und migriert werden.
// Change directory to the front-end folder
cd client
// Serves the front-end on http://localhost:3000
npm run devTrüffel kann Tests in Solidität oder JavaScript gegen Ihre intelligenten Verträge ausführen. Beachten Sie, dass der Befehl geringfügig variiert, wenn Sie sich in oder außerhalb der Entwicklungskonsole befinden.
// If inside the development console.
test
// If outside the development console..
truffle test Da truffle develop die Blockchain auf Port 9545 aussetzt, müssen Sie ein benutzerdefiniertes RPC -Netzwerk von http://localhost:9545 in Ihrer Metamaske hinzufügen, damit es funktioniert.
Wir empfehlen dringend, truffle develop gegenüber testrpc zu verwenden. Wenn Sie jedoch testrpc verwenden möchten, müssen Sie einige Dinge tun:
Ändern Sie Zeile 6 von client/lib/getWeb3.js um localhost:8545 anstelle von localhost:9545 zu verwenden, also verweisen wir auf testrpc anstelle von truffle develop .
Führen Sie Ihren testrpc mit dem folgenden Befehl aus (weil Gründe):
testrpc --gasLimit 6721975 --gasPrice 100000000000