什么是 @daonomic/daox-tokens 包?
@daonomic/daox-tokens 是一个基于以太坊的 ERC20 token 合约的 JavaScript 库。它提供了一组简单易用的方法,可以让开发者轻松地在 Dapp 中与智能合约交互,包括:
- 连接到以太坊区块链,并监听账号、网络变化事件
- 获取 tokens 的余额和总供应量
- 转账 tokens
- 监听转账事件
安装与配置
安装:
npm install @daonomic/daox-tokens
使用:
const { createProvider } = require("@daonomic/daox-tokens"); const provider = createProvider({ web3Provider: window.ethereum, network: "mainnet", });
方法
连接以太坊区块链
provider.connect().then((address) => { console.log("connected to ethereum with address", address); });
获取账户 token 余额
const tokenBalance = provider.getTokenBalance( "0x9ef1f2dee87a3b3f174a84dbd48cc81be207f7cf" ); console.log("token balance", tokenBalance);
获取 token 总供应量
const totalSupply = provider.getTotalSupply(); console.log("total token supply", totalSupply);
转账 tokens
provider.transfer({ from: "0x9ef1f2dee87a3b3f174a84dbd48cc81be207f7cf", to: "0xb37b7Fef9E76A47a0233B3e2Cc7d48Bf52Dfb7c8", amount: 5, }).then(() => { console.log("transfer successful"); });
监听转账事件
provider.onTransfer((event) => { console.log("transfer event", event); });
示例代码
-- -------------------- ---- ------- ----- - -------------- - - --------------------------------- ----- -------- - ---------------- ------------- ---------------- -------- ---------- --- --------------------------------- -- - ---------------------- -- -------- ---- --------- --------- -- ---- ----- ------------ - ------------------------- -------------------------------------------- -- ------------------ --------- -------------- -- ----- ----- ----------- - -------------------------- ------------------ ----- -------- ------------- -- -- ------------------- ----- --------------------------------------------- --- --------------------------------------------- ------- -- ---------- -- - --------------------- ------------- --- -- ---- --------------------------- -- - --------------------- ------- ------- --- ---
结论
通过本文的学习,您应该已经学会如何使用 @daonomic/daox-tokens 包连接以太坊区块链,获取账户 token 余额和总供应量,转账 tokens 以及监听转账事件。这个 npm 包的使用,可以让您在 Dapp 中更加方便快捷地与智能合约交互,为您的开发工作提供更好的支持。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6005722a81e8991b448e8521