Chuyển đến nội dung chính

Bài đăng

Hiển thị các bài đăng có nhãn Payable functions

Tự học Web3: Calling Payable Functions gọi hàm Payable từ web3.js đến một hợp đồng được viết bằng Solidity

Calling Payable Functions Tự học Web3 : Calling Payable Functions gọi hàm Payable từ web3.js đến một hợp đồng được viết bằng Solidity Chúng ta sắp đi đến những bài cuối cùng của khoá học Solidity và Web3 miễn phí này rồi. Trong bài hôm nay hãy xem xét một loại hàm khác yêu cầu xử lý đặc biệt trong Web3.js - Payable Functions. Calling Payable Functions Hàm Level Up! Nhớ lại trong ZombieHelper, chúng tôi đã thêm một Payable Functionsđể người dùng có thể lên cấp: function levelUp ( uint _zombieId ) external payable { require ( msg . value == levelUpFee); zombies[_zombieId].level++; } Cách gửi Ether cùng với một chức năng rất đơn giản, với một lưu ý: chúng ta cần chỉ định số tiền cần gửi trong wei, không phải Ether. Wei là gì? Một wei là đơn vị con nhỏ nhất của Ether - có 10 ^ 18 wei trong một ether. Đó là rất nhiều số 0 để đếm - nhưng may mắn là Web3.js có một tiện ích chuyển đổi thực hiện điều này cho chúng ta. // This will convert 1 ETH to Wei web3js.utils. to Wei( "1&quo

Tự học Solidity bài 34: Payable functions of Solidity. Hàm thanh toán - code một functions mà người dùng phải trả ETH để gọi hàm như thế nào?

Payable functions of Solidity.  Tự học Solidity. Hàm thanh toán.  Code một functions mà người dùng phải trả ETH để gọi hàm như thế nào?  Một số định nghĩa functions mà chúng ta đã được học  Chúng ta có các công cụ sửa đổi khả năng hiển thị của functions: Kiểm soát khi nào và ở đâu hàm có thể được gọi hàm đó như:  - private có nghĩa là nó chỉ có thể được gọi từ các hàm khác bên trong hợp đồng. -  internal  giống như private nhưng cũng có thể được gọi bằng các hợp đồng kế thừa. - external  chỉ có thể được gọi là bên ngoài hợp đồng. -  public  có thể được gọi ở bất cứ đâu, cả bên trong và bên ngoài hợp đồng. Chúng ta cũng có các công cụ sửa đổi trạng thái, cho chúng ta biết cách hàm tương tác với BlockChain: - view cho chúng ta biết rằng bằng cách chạy hàm, sẽ không có dữ liệu nào được lưu / thay đổi.  - pure cho chúng ta biết rằng hàm không chỉ không lưu bất kỳ dữ liệu nào vào blockchain mà còn không đọc bất kỳ dữ liệu nào từ blockchain.  Cả hai đều không tốn gas nếu gọi từ bên ngoài t