coinbase-api - 安装 metamask 和 coinbase chrome 扩展时如何获取 metamask 以太坊对象?
问题描述
当我同时安装metamask
和coinbase
chrome 扩展时。ethereum
对象不能正常工作。
解决方案
只需使用这样的代码:
async function findMetaMaskProvider() {
const { providers } = (window as any).ethereum;
let selectedProvider: any;
for (const provider of providers || []) {
if (provider.isMetaMask) {
selectedProvider = provider;
}
}
if (selectedProvider) {
(window as any).ethereum.setSelectedProvider(selectedProvider);
return selectedProvider;
}
return (window as any).ethereum;
}
推荐阅读
- typescript - 如何使用打字稿中的字符串访问自定义界面的对象属性
- r - 是否有一种简单的方法可以对 R 中的向量中的元素执行算术运算?
- c# - 使用 UnityWebRequest 和 php 获取上传文件的链接
- python - 如何跟踪通过 ansible 调用的长时间运行的 python 脚本的日志
- php - 如何检查 WooCommerce 产品类型是否不可变?
- .net - 我应该如何在 heroku 上托管 abp.io Blazor 项目?
- node.js - 在 jest 和 nest.js 节点中生成 E2e 测试报告
- css - 将图像与文本垂直对齐
- keras - Pytorch:使用特定过滤器对样本进行卷积
- sql - ORACLE PL/SQL:在子选择中加入游标