在本教程中,我将向大家展示我能想到的最简单的例子,如何在web应用程序中将ENS地址转换为ETH地址。
、
知道如何做是很有价值的,因为大多数智能合约只接受ETH地址,而不接受ENS地址。
介绍
如何做到这一点的简单答案是,用户只需要从子图中查询数据。
有多种方法转换一个ENS地址:
1:使用ENS.js
我曾经使用这个库来转换ENS地址。但是,它不适用于位于layer2的应用程序,所以我不会展示如何以这种方式进行操作。
2:使用ENS提供的去中心化子图
dYdX:将推出多平台应用程序并开源前端代码库和相关部署脚本:5月31日消息,去中心化永续合约协议 dYdX 发文介绍 v4 架构和前端如何工作,称其 Web 前端为不希望以编程方式与 v4 交互的交易者提供直观 UI/UX,其正在构建三个前端:一个 Web 应用程序、一个 iOS 应用程序和一个 Android 应用程序,此外还将为高级用户 / 机构提供 Typescript 和 Python SDK。dYdX 表示,将开源所有前端代码库和相关部署脚本,允许任何人通过自己的域 / 托管解决方案轻松部署 dYdX 前端。[2023/5/31 11:50:17]
这是最可靠的方法,因为它是去中心化的。然而,当我在ENSdiscord中询问时,他们说不要用这个。此外,每次用户在你的应用程序上查询这个子图时,你都要花钱——所以它不是免费的。我认为ENS计划告诉每个人使用这个子图,但我可能是错的,我不确定他们会等待什么。
Alphabet将在谷歌I/O大会上发布人工智能更新:金色财经报道,谷歌母公司Alphabet计划宣布一系列生成式人工智能更新,包括推出通用大型语言模型(LLM)。根据媒体看到的有关谷歌I/O的内部文件,该公司将推出其最新、最先进的大型语言模型——PaLM 2。PaLM 2包含100多种语言,并一直在内部代号“统一语言模型”下运行。它还进行了广泛的编码和数学测试以及创意写作。[2023/5/9 14:50:55]
3:使用ENS提供的中心化子图
这个子图是免费使用的,也是巴黎高等师范学院推荐人们使用的。这是我将教如何使用这里。
项目设置
首先,在本地克隆repo。然后,安装所有依赖项并运行本地服务器。如果要检查localhost,就应该在页面上看到一个输入。如果输入了一个有效的ENS地址,就将看到有效性和ETH地址正在浏览器控制台中登录,确认转换。
Animoca Brands和Planet Hollywood将推出会员制俱乐部CLUB 3:3月9日消息,Animoca Brands和Planet Hollywood将推出会员制俱乐部CLUB 3,为Web3社区提供福利和计划。Animoca Brands已与Planet Hollywood成立了合资企业Meta Hollywood。
据悉,第一个CLUB3将于2023年下半年在加利福尼亚州洛杉矶日落大道中心开业,之后计划在纽约、迈阿密、东京、伦敦、巴黎和香港等全球最受欢迎的城市进行多次扩张。CLUB 3会员资格以NFT的形式提供。[2023/3/9 12:52:16]
解释
Meme项目FLOKI:FlokiFi Locker TVL突破600万美元:1月30日消息,Meme项目FLOKI发推称,FlokiFi Locker TVL已突破600万美元。FLOKI表示,FlokiFi Locker旨在为FLOKI代币提供实用性。[2023/1/30 11:36:08]
既然你已经有了所有的代码,我将用本教程的剩余部分来解释它如何线性工作。
在主页上有一个输入(src/pages/index.tsx)。输入时,它设置inputAddress状态变量。
每当这个状态变量发生变化时,它都会被这里的useENSAddresshook检测到:
现在打开Reacthook的文件(src/components/useENSAddress.ts)。你可以看到它使用了里面的useEffect的hook。这个useEffect的依赖项列表中有一个inputAddress参数。这会导致useEffect主体在每次inputAddress改变时(通过用户输入)被调用。
useEffect(():any=>{...bodycodehere...},)
那么当调用useEffect的主体时会发生什么呢?几乎所有发生的都是run方法被调用。
run方法通过调用其他方法来设置ETH地址。让我们检查一下那个方法,因为它是调用堆栈中的下一个。
打开src/stores/ensStore.ts。里面是queryENSForETHAddress方法。
首先,它进行软检查,看看传入的值是否为ENS地址。
然后,它查询由HTTP_GRAPHQL_ENDPOINT定义的子图。为了获得我们想要的数据,我们需要创建一个graphql查询。这就是getQueryENSForETHAddress方法的作用。
现在转到那个方法。它正在查询子图以获取传入的ENS地址的数据。
如果你想知道我是怎么想通了如何创建此查询,那么你需要更多关于thegraph和graphql工作的知识。基本上,每个子图都有一个游乐场,我一直在摆弄它,直到我得到了所需的数据。
例如,在playground中,可以输入查询,然后按下播放键,以便查看返回的数据。
现在,如果返回到queryENSForETHAddress,你可以看到数据存储在result变量中:
return语句的基本意思是,ifvalidENSaddresspassedin,returntheETHaddress…otherwise,return0。你还会注意到返回的数据采用来自getQueryENSForETHAddress。
一旦它返回,它可以追溯到useEffect中useENSAddress.ts的文件和设置ethAddress状态变量。
然后,返回三个值:
return
第一个值表示传入的值是否有效。第二个值是从子图中检索到的ETH地址。第三个值表示这些值当前是否正在加载。
差不多就是这样了。完成这个过程后,我将这些值记录到主页上的控制台。
现在你已经知道如何将第一层和第二层的ENS地址转换为ETH地址。
Source:https://medium.com/coinmonks/how-to-convert-ens-address-to-eth-address-in-js-251c6209c208
来源:金色财经
撰文:Footprint分析师VincyNFT与2019年DeFi一样,各项目依然是默默无闻,但经历了2021年夏天的牛市之后,NFT从之前的一个小众市场变为不可忽视的黄金赛道.
1900/1/1 0:00:00作者|老牛对于存储区块链资产的钱包,还有不少人没搞懂,尤其是地址、公钥、密码、私钥、助记词、Keystore等专有名词,让人一头雾水。可是,如果不搞清楚这些概念,很可能会造成区块链资产的损失.
1900/1/1 0:00:00原文来自:bankless作者:AlexBeckett不要相信FUD,以太坊正在扩容。几周前,David写了一篇题为《UltraScalableEthereum》的文章.
1900/1/1 0:00:00一只带着蓝绿色领带、一顿饭可以吃两斤菜的兔子,一只带着粉红色领巾、一顿饭可以吃两碗米的兔子,今日起正式成为文艺复兴NFT交易平台签约IP,其创作者INBing正式加入“美第奇扶持计划”.
1900/1/1 0:00:00撰文:Footprint分析师Sabrina11月10日晚间,Terra社区通过了一项销毁约8870万个价值约45亿美元的LUNA代币以及铸造约400万至500万美元的UST的提案.
1900/1/1 0:00:001.社交:元宇宙的关键“命门”众所周知,元宇宙可以给创作者和粉丝提供创新、独特的交互体验,通过重构传统创作者和粉丝之间的社交关系.
1900/1/1 0:00:00