DEV Community

kanthakran
kanthakran

Posted on

Deploy contract with Hardhat th.

บทความนี้เหมาะสำหรับคนที่มีความรู้เรื่องการ deploy smart contract อยู่แล้ว

  • แต่ปัญหาที่เจอ Hardhat ไม่ support บาง chain เช่น klaytn ใช้ truffle เหมือนเดิมดีกว่า

Hardhat vs Truffle

ส่วนตัวผมนั้นเคยใช้ Truffle เป็นประจำอยู่แล้ว จากประสบการณ์ การเขียน smart contract มันมี step เดิมๆ ที่ต้องใช้ tool 2 ตัวนี้

  • test
  • run test chain (อาจจะใช้ ganache หรือ testnet ก็ได้)
  • complie
  • deploy

Setup Hardhat

ใช้ npm ธรรมดาเลย

npm install --save-dev hardhat
Enter fullscreen mode Exit fullscreen mode

Debug

ข้อดีของ hardhat เวลา debug เราสามารถใช้ console.log ได้เลยซึ่จะมีในตัวอย่างตอนที่เราสร้างขึ้นมาตาม command ข้างล่าง

Command

Create project

npx hardhat
Enter fullscreen mode Exit fullscreen mode

ตรงนี้แล้วแต่จะเลือกเลยจะใช้ อะไรผมชอบ typescript
Image description

Compile

npx hardhat compile 
Enter fullscreen mode Exit fullscreen mode

Test

npx hardhat test
Enter fullscreen mode Exit fullscreen mode

Run test chain

npx hardhat node
Enter fullscreen mode Exit fullscreen mode

Config Hardhat

https://hardhat.org/config/

Deploy contract

npx hardhat run scripts/sample-script.js
or
npx hardhat run scripts/sample-script.js --network localhost 
# สำหรับเลือก network
Enter fullscreen mode Exit fullscreen mode

หลังจาก deploy มัน auto verify code ให้เลยถ้าจะปิดหาวิธีเองนะ

Image description

สรุป

รวมๆ เป็น tool ที่ครบเครื่องมากๆ ในการ dev ไม่ว่าจะเป็นตัว plugin verify code, ตัว run chain test , test lib ต่างๆ รวมถึงตัว debug สุดล้ำ

  • ข้อเสียอย่างเดียวเลยคือ ไม่ได้ support ทุก chain แต่จะ dev ในนี้ไป deploy ใน truffle ก็ไม่เสียหาย hardhat ก็เทสไปใช้เท่าที่ใช้ได้ 555

Top comments (0)