このページは英語からの機械翻訳を使用しており、誤りや不明瞭な表現が含まれている可能性があります。最も正確な情報については、オリジナルの英語版をご覧ください。頻繁な更新のため、一部のコンテンツはオリジナルの英語になっている可能性があります。Crowdinでの取り組みに参加して、このページの翻訳改善にご協力ください。 (Crowdin translation page, Contributing guide)
スマート・コントラクトの実行
TxTypeSmartContractExecutionは、与えられたデータでスマート・コントラクトを実行する。 TxTypeSmartContractExecutionは、"to "がスマート・コントラクト・アカウントである場合のみ受理される。
ethers.jsにkaiaの機能を追加するために、ethersモジュールと**@kaiachain/ethers-ext**モジュールをインポートします。
送信者アドレスと送信者秘密鍵の定義
指定されたkairos testnet URLでプロバイダを設定します。 エーテルにおけるプロバイダーとは、ブロックチェーンのデータにアクセスするための読み取り専用の抽象化されたものである。
また、プロバイダのURLをkairosからquicknodeに変更することができます。
送信者の秘密鍵とプロバイダーを使って送信者のウォレットを作成する。
実行したい契約アドレスをtoフィールドにセットし、ABIをセットする。
Ethers.Contractで契約インスタンスを作成し、パラメータ contractAddr、abi、provider を指定します。 このインスタンスを通じて、契約の読み書きができる。
関数名とパラメータをencodeFunctionData関数でエンコードする。
トランザクションオブジェクトの宣言
ブロックチェーンに送信する。 関数 sendTransaction
は内部的にアカウントの秘密鍵で署名し、ブロックチェーンネットワークに送信する。
wait関数は、ブロックチェーン上でtx受信が完了すれば、それを返す。