Passer au contenu principal

Envoyer des jetons à l'aide d'ethers.js

ETHERS.JS
ERC-20
JETONS
Débutant
Kim YongJun
6 avril 2021
3 minutes de lecture

Envoyer un jeton avec ethers.js(5.0)

Dans ce tutoriel, vous apprendrez comment

  • Importer ethers.js
  • Transférer un jeton
  • Définir le prix du gaz en fonction de l'état du trafic du réseau

Pour commencer

Pour commencer, nous devons d'abord importer la bibliothèque ethers.js dans notre JavaScript. Inclure ethers.js(5.0)

Installation

/home/ricmoo> npm install --save ethers

ES6 dans le navigateur

<script type="module">
  import { ethers } from "https://cdn.ethers.io/lib/ethers-5.0.esm.min.js"
  // Votre code ici...
</script>

ES3 (UMD) dans le navigateur

<script
  src="https://cdn.ethers.io/lib/ethers-5.0.umd.min.js"
  type="application/javascript"
></script>

Paramètres

  1. contract_address : adresse du contrat de jeton (l'adresse du contrat est nécessaire lorsque le jeton que vous voulez transférer n'est pas de l'ether)
  2. send_token_amount : le montant que vous souhaitez envoyer au destinataire
  3. to_address : l'adresse du destinataire
  4. send_account : l'adresse de l'expéditeur
  5. private_key : clé privée de l'expéditeur pour signer la transaction et transférer les jetons

Remarque

signTransaction(tx) est supprimé car sendTransaction() s'en charge en interne.

Procédure d'envoi

1. Se connecter au réseau (réseau de test)

Définir le fournisseur (Infura)

Se connecter au réseau de test Ropsten

window.ethersProvider = new ethers.providers.InfuraProvider("ropsten")

2. Créer un portefeuille

let wallet = new ethers.Wallet(private_key)

3. Connecter le portefeuille au réseau

let walletSigner = wallet.connect(window.ethersProvider)

4. Obtenir le prix actuel du gaz

window.ethersProvider.getGasPrice() // gasPrice

5. Définir la transaction

Les variables définies ci-dessous dépendent de send_token()

Paramètres de transaction

  1. send_account : adresse de l'expéditeur du jeton
  2. to_address : adresse du destinataire du jeton
  3. send_token_amount : le montant de jetons à envoyer
  4. gas_limit : limite de gaz
  5. gas_price : prix du gaz

Voir ci-dessous pour savoir comment l'utiliser

const tx = {
  from: send_account,
  to: to_address,
  value: ethers.utils.parseEther(send_token_amount),
  nonce: window.ethersProvider.getTransactionCount(send_account, "latest"),
  gasLimit: ethers.utils.hexlify(gas_limit), // 100000
  gasPrice: gas_price,
}

6. Transfert

walletSigner.sendTransaction(tx).then((transaction) => {
  console.dir(transaction)
  alert("Envoi terminé !")
})

Comment l'utiliser

Succès !

image d'une transaction effectuée avec succès

send_token()

Dernière mise à jour de la page : 3 mars 2026

Ce tutoriel vous a-t-il été utile ?