
Perkembangan Dapp Ethereum Rapid
Truffle sangat bagus untuk mengembangkan kontrak pintar soliditas, tetapi membangun frontend bereaksi untuk kontrak pintar sering kali merupakan tugas. Next.js adalah salah satu cara termudah untuk membangun frontend seperti itu dan integrasi antara truffle dan next.js adalah apa yang coba ditunjukkan oleh boilerplate ini.
Ada dua fitur utama:
Proyek truffle init polos digunakan sebagai basis (bersama dengan kontrak contoh sederhana).
Proyek Next.js berada di direktori client dengan symlink ke folder output dari definisi ABI kontrak. Aplikasi Next.js juga menyediakan kerangka sederhana untuk menghubungkan dan berinteraksi dengan kontrak pintar di jaringan.
Untuk informasi lebih lanjut tentang cara kerja frontend, baca readme.md yang terletak di direktori client .
Pasang truffle secara global.
npm install -g truffleUnduh kotaknya. Ini juga menangani pemasangan dependensi yang diperlukan.
truffle unbox adrianmcli/truffle-nextJalankan konsol pengembangan.
truffle develop Kompilasi dan migrasi kontrak pintar. Catatan di dalam konsol pengembangan kami tidak mengawali perintah dengan truffle .
compile
migrateJalankan server Next.js untuk front-end. Perubahan kontrak pintar harus dikompilasi ulang secara manual dan dimigrasi.
// Change directory to the front-end folder
cd client
// Serves the front-end on http://localhost:3000
npm run devTruffle dapat menjalankan tes yang ditulis dalam soliditas atau javascript terhadap kontrak pintar Anda. Perhatikan perintahnya sedikit berbeda jika Anda berada di atau di luar konsol pengembangan.
// If inside the development console.
test
// If outside the development console..
truffle test Karena truffle develop memperlihatkan blockchain ke port 9545 , Anda harus menambahkan jaringan RPC khusus http://localhost:9545 di metamask Anda untuk membuatnya berfungsi.
Kami sangat merekomendasikan menggunakan truffle develop melalui testrpc , tetapi jika Anda ingin menggunakan testrpc , ada beberapa hal yang perlu Anda lakukan:
Ubah baris 6 dari client/lib/getWeb3.js untuk menggunakan localhost:8545 bukan localhost:9545 jadi kami merujuk ke testrpc alih -alih truffle develop .
Jalankan testrpc Anda dengan perintah berikut (karena alasan):
testrpc --gasLimit 6721975 --gasPrice 100000000000