使用React和Network
exportdefaultApp;
Augur 将通过使用 DXdao 结构引入 AugurDAO:11月19日消息,去中心化预测市场协议 Augur 宣布将引入 AugurDAO,不过会与管理着预测市场 Omen 的去中心化自治组织 DXdao 合作,并使用 DXdao 结构来构建 AugurDAO,但治理将由 REPv2 持有者推动。Augur 计划于 2021 年 11 月底对支持 DAO 投票的智能合约进行审计,目前还在开发中。
之后,DXdao 论坛将提出一项提案来讨论 DXdao 对 AugurDAO 的支持和合作关系细节。此外,Augur Discord目前已完全由社区志愿者运营。[2021/11/19 6:59:26]
现在,我们的去中心化应用将显示其当前接入的以太坊网络及其使用的web3提供商。
我们来测试一下:通过从/client目录中运行npmstart来保存并启动浏览器。通过将InfurawebsocketURL中的mainnet替换为rinkeby进行测试。如果已经安装了MetaMask,则禁用这里的扩展,因为您看到它具有优先性。
具体运作方式是:在上面的代码中,我们从React实现的NetworkJS(;constrequestAccess=useCallback(()=>requestAuth(web3Context),);return(<p><h3>{props
上面的代码所执行的操作如下:
从web3Context拉取账户,并在去中心化应用中显示可用的用户地址;
如果我们请求的账户不可用,去中心化应用将生成一个按钮。用户可以通过该按钮向去中心化应用提供对其地址的访问权限;
用户按下该按钮后,将调用web3Context中的requestAuth函数,且注入的web3提供商可以显示一个对话框,供用户请求获取访问权限。使用React功能时,将使用useCallback设置“账户访问请求”回调函数。
我们现在通过从客户端目录中运行npmstart来再次启动该去中心化应用。
在浏览器中,按下“RequestAccess”以请求访问用户地址,然后接受Metamask弹出窗口中的请求。这时将显示用户地址。要重新开始该流程,退出Metamask即可再次提交用户访问请求。
账户余额
最后,我们的第三个目标是添加React组件以显示账户余额。
在下面的代码中,我们获取lib对象,其中包含我们需要的区块链。该对象来自web3Context,这是web3
,);useEffect(()=>{getBalance();},);constrequestAuth=asyncweb3Context=>{try{awaitweb3Context
catch(e){console
};constrequestAccess=useCallback((web3Context)=>requestAuth(web3Context),);return(<p><h3>{props
我们通过运行客户端目录中的npmstart再次启动去中心化应用。好了!去中心化应用现在应该会显示账户余额。
您刚刚构建了去中心化应用前端。它可以接入以太坊主网并向主网请求数据。用户“登录”后,去中心化应用显示用户需要的信息并响应状态变更。
持续学习
我们的下一期教程将向您介绍如何显示用户的ERC20余额并支持用户转移余额。更多web3开发指南将包括众多主题,例如使用Ethers.js进行构建、使用OpenZeppelin的新手入门套件,以及更多复杂集成,例如使用Truffle的Drizzle框架设置以太坊日志筛选器,从而在前端实时响应区块链数据变更。
来自:https://blog.infura.io/zh_cn/shi-yong-react-he-network-js-gou-jian-qu-zhong-xin-hua-ying-yong-qian-duan/
本文来源于非小号媒体平台:
登链社区
现已在非小号资讯平台发布105篇作品,
非小号开放平台欢迎币圈作者入驻
入驻指南:
/apply_guide/
本文网址:
/news/9558540.html
免责声明:
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代表非小号的观点或立场
上一篇:
币安为何推出第三条链?这对BNB意味着什么?
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。