ในบทเรียนก่อนหน้านี้ เราได้พูดคุยถึงโครงสร้างของสัญญา LearnCoin และการปรับใช้บน Goerli Testnet ตอนนี้ เราจะแนะนำคุณตลอดขั้นตอนการโต้ตอบกับสัญญาโดยใช้ Remix Ethereum IDE
สัญญา LearnCoin มาพร้อมกับฟังก์ชันต่างๆ ที่คุณสามารถเรียกใช้เพื่อดำเนินการต่างๆ ได้ เช่น การหยุดการโอนโทเค็น การยกเลิกการหยุดชั่วคราว การสร้างสแน็ปช็อต และอื่นๆ อย่างไรก็ตาม ผู้ใช้บางคนอาจไม่สามารถเข้าถึงฟังก์ชันทั้งหมดได้ ฟังก์ชันบางอย่างสามารถเรียกใช้ได้โดยบัญชีที่มีบทบาทเฉพาะเท่านั้น (เช่น เจ้าของสัญญา)
มาสำรวจและสำรวจฟังก์ชันเหล่านี้กันดีกว่า จากแผงด้านซ้ายของการรีมิกซ์ คลิกที่ปุ่ม Deploy & Run Transactions และไปที่ด้านล่าง คุณจะพบสัญญา Deployd และคุณจะเห็นบางอย่างดังนี้:
นี่คือรายการฟังก์ชันทั้งหมดที่คุณสามารถหรือไม่สามารถโทรได้
สัญญา LearnCoin ประกอบด้วยชุดฟังก์ชันสาธารณะที่คุณสามารถโทรได้จาก Remix IDE:
pause()
: สามารถเรียกใช้ฟังก์ชันนี้เพื่อหยุดการถ่ายโอนโทเค็นทั้งหมดชั่วคราว สามารถเรียกได้โดยบัญชีที่มี PAUSER_ROLE
เท่านั้น
unpause()
: สามารถเรียกใช้ฟังก์ชันนี้เพื่อยกเลิกการหยุดการถ่ายโอนโทเค็นชั่วคราว นอกจากนี้ยังสามารถเรียกได้โดยบัญชีที่มี PAUSER_ROLE
เท่านั้น
snapshot()
: ฟังก์ชันนี้ใช้เพื่อถ่ายภาพสถานะปัจจุบันของยอดคงเหลือโทเค็น สามารถเรียกได้โดยบัญชีที่มี SNAPSHOT_ROLE
เท่านั้น
decimals()
: ฟังก์ชันนี้ส่งคืนจำนวนทศนิยมที่โทเค็นใช้ - โดยทั่วไปคือ 18 นี่เป็นฟังก์ชันแบบอ่านอย่างเดียวและใครๆ ก็สามารถเรียกใช้ได้
DEFAULT_ADMIN_ROLE()
: ฟังก์ชันนี้จะส่งคืนบทบาทผู้ดูแลระบบเริ่มต้น เป็นฟังก์ชันอ่านอย่างเดียวและใครๆ ก็สามารถเรียกใช้ได้
DOMAIN_SEPARATOR()
, EIP712DOMAIN()
, name()
, PAUSER_ROLE()
, SNAPSHOT_ROLE()
, symbol()
, totalSupply()
: ทั้งหมดนี้เป็นฟังก์ชันแบบอ่านอย่างเดียวที่ส่งคืนข้อมูลส่วนต่างๆ เกี่ยวกับสัญญา ใครๆ ก็สามารถเรียกพวกเขาได้
ฟังก์ชันต่อไปนี้สามารถโต้ตอบได้โดยตรงผ่าน Remix IDE:
หากต้องการหยุดการถ่ายโอนโทเค็นทั้งหมดชั่วคราว ให้คลิกที่ฟังก์ชัน pause()
เจ้าของสัญญาเท่านั้นที่สามารถเรียกใช้ฟังก์ชันนี้ได้ และคุณจะต้องยืนยันธุรกรรมผ่าน MetaMask
การยกเลิกการหยุดชั่วคราวทำงานในลักษณะเดียวกัน เพียงคลิกที่ฟังก์ชัน unpause()
และยืนยันการทำธุรกรรม
หากต้องการสร้างสแนปชอตของยอดโทเค็น ให้คลิกที่ฟังก์ชัน snapshot()
และยืนยันธุรกรรม
คุณสามารถดูข้อมูลต่างๆ เกี่ยวกับสัญญาได้โดยการเรียกใช้ฟังก์ชันต่อไปนี้:
decimals()
: ดูจำนวนทศนิยมที่โทเค็นใช้DEFAULT_ADMIN_ROLE()
: ดูบทบาทผู้ดูแลระบบเริ่มต้นDOMAIN_SEPARATOR()
, EIP712DOMAIN()
, name()
, PAUSER_ROLE()
, SNAPSHOT_ROLE()
, symbol()
, totalSupply()
: ดูรายละเอียดต่างๆ เกี่ยวกับสัญญาตัวอย่างเช่น หากคุณขอการจัดหาโทเค็นโดยการคลิก TotalSupply ผลลัพธ์จะเป็น:
ขอแสดงความยินดีที่มาไกลขนาดนี้! ตอนนี้ คุณควรจะคุ้นเคยกับวิธีโต้ตอบกับสัญญา LearnCoin ผ่าน Remix Ethereum IDE แล้ว การทำความเข้าใจปฏิสัมพันธ์เหล่านี้เป็นกุญแจสำคัญในการจัดการโทเค็นของคุณบนเครือข่าย Ethereum อย่างมีประสิทธิภาพ
ในบทเรียนก่อนหน้านี้ เราได้พูดคุยถึงโครงสร้างของสัญญา LearnCoin และการปรับใช้บน Goerli Testnet ตอนนี้ เราจะแนะนำคุณตลอดขั้นตอนการโต้ตอบกับสัญญาโดยใช้ Remix Ethereum IDE
สัญญา LearnCoin มาพร้อมกับฟังก์ชันต่างๆ ที่คุณสามารถเรียกใช้เพื่อดำเนินการต่างๆ ได้ เช่น การหยุดการโอนโทเค็น การยกเลิกการหยุดชั่วคราว การสร้างสแน็ปช็อต และอื่นๆ อย่างไรก็ตาม ผู้ใช้บางคนอาจไม่สามารถเข้าถึงฟังก์ชันทั้งหมดได้ ฟังก์ชันบางอย่างสามารถเรียกใช้ได้โดยบัญชีที่มีบทบาทเฉพาะเท่านั้น (เช่น เจ้าของสัญญา)
มาสำรวจและสำรวจฟังก์ชันเหล่านี้กันดีกว่า จากแผงด้านซ้ายของการรีมิกซ์ คลิกที่ปุ่ม Deploy & Run Transactions และไปที่ด้านล่าง คุณจะพบสัญญา Deployd และคุณจะเห็นบางอย่างดังนี้:
นี่คือรายการฟังก์ชันทั้งหมดที่คุณสามารถหรือไม่สามารถโทรได้
สัญญา LearnCoin ประกอบด้วยชุดฟังก์ชันสาธารณะที่คุณสามารถโทรได้จาก Remix IDE:
pause()
: สามารถเรียกใช้ฟังก์ชันนี้เพื่อหยุดการถ่ายโอนโทเค็นทั้งหมดชั่วคราว สามารถเรียกได้โดยบัญชีที่มี PAUSER_ROLE
เท่านั้น
unpause()
: สามารถเรียกใช้ฟังก์ชันนี้เพื่อยกเลิกการหยุดการถ่ายโอนโทเค็นชั่วคราว นอกจากนี้ยังสามารถเรียกได้โดยบัญชีที่มี PAUSER_ROLE
เท่านั้น
snapshot()
: ฟังก์ชันนี้ใช้เพื่อถ่ายภาพสถานะปัจจุบันของยอดคงเหลือโทเค็น สามารถเรียกได้โดยบัญชีที่มี SNAPSHOT_ROLE
เท่านั้น
decimals()
: ฟังก์ชันนี้ส่งคืนจำนวนทศนิยมที่โทเค็นใช้ - โดยทั่วไปคือ 18 นี่เป็นฟังก์ชันแบบอ่านอย่างเดียวและใครๆ ก็สามารถเรียกใช้ได้
DEFAULT_ADMIN_ROLE()
: ฟังก์ชันนี้จะส่งคืนบทบาทผู้ดูแลระบบเริ่มต้น เป็นฟังก์ชันอ่านอย่างเดียวและใครๆ ก็สามารถเรียกใช้ได้
DOMAIN_SEPARATOR()
, EIP712DOMAIN()
, name()
, PAUSER_ROLE()
, SNAPSHOT_ROLE()
, symbol()
, totalSupply()
: ทั้งหมดนี้เป็นฟังก์ชันแบบอ่านอย่างเดียวที่ส่งคืนข้อมูลส่วนต่างๆ เกี่ยวกับสัญญา ใครๆ ก็สามารถเรียกพวกเขาได้
ฟังก์ชันต่อไปนี้สามารถโต้ตอบได้โดยตรงผ่าน Remix IDE:
หากต้องการหยุดการถ่ายโอนโทเค็นทั้งหมดชั่วคราว ให้คลิกที่ฟังก์ชัน pause()
เจ้าของสัญญาเท่านั้นที่สามารถเรียกใช้ฟังก์ชันนี้ได้ และคุณจะต้องยืนยันธุรกรรมผ่าน MetaMask
การยกเลิกการหยุดชั่วคราวทำงานในลักษณะเดียวกัน เพียงคลิกที่ฟังก์ชัน unpause()
และยืนยันการทำธุรกรรม
หากต้องการสร้างสแนปชอตของยอดโทเค็น ให้คลิกที่ฟังก์ชัน snapshot()
และยืนยันธุรกรรม
คุณสามารถดูข้อมูลต่างๆ เกี่ยวกับสัญญาได้โดยการเรียกใช้ฟังก์ชันต่อไปนี้:
decimals()
: ดูจำนวนทศนิยมที่โทเค็นใช้DEFAULT_ADMIN_ROLE()
: ดูบทบาทผู้ดูแลระบบเริ่มต้นDOMAIN_SEPARATOR()
, EIP712DOMAIN()
, name()
, PAUSER_ROLE()
, SNAPSHOT_ROLE()
, symbol()
, totalSupply()
: ดูรายละเอียดต่างๆ เกี่ยวกับสัญญาตัวอย่างเช่น หากคุณขอการจัดหาโทเค็นโดยการคลิก TotalSupply ผลลัพธ์จะเป็น:
ขอแสดงความยินดีที่มาไกลขนาดนี้! ตอนนี้ คุณควรจะคุ้นเคยกับวิธีโต้ตอบกับสัญญา LearnCoin ผ่าน Remix Ethereum IDE แล้ว การทำความเข้าใจปฏิสัมพันธ์เหล่านี้เป็นกุญแจสำคัญในการจัดการโทเค็นของคุณบนเครือข่าย Ethereum อย่างมีประสิทธิภาพ