【发布时间】:2022-09-17 06:04:40
【问题描述】:
TL;博士一个简单的(typeof window.ethereum !== 'undefined') ? 'META YES' : 'META NO' 在安卓上说不,但在所有其他平台上都是。
大家好,所以我有一个完全精简的 react 应用程序,它甚至不再渲染 JSX,因为我已经剥离了它。基本上我有一个看起来像这样的索引:
<!DOCTYPE html>
<html lang="en">
<head>
</head>
<body>
<div id="root"></div>
</body>
</html>
还有一个如下所示的 index.tsx 文件:
const metamask = (typeof window.ethereum !== 'undefined') ? 'META YES' : 'META NO'
const doc = document.getElementById('root');
if(doc) {
doc.innerHTML = metamask
}
本质上,如果我在窗口上有一个ethereum 对象,则只显示 META YES,否则 META NO。
现在,在 IOS(通过 MetaMask 应用浏览器)和桌面(使用 MetaMask 扩展)上,我得到了 META YES。 但是在 android 上(通过 MetaMask 应用浏览器),我得到了 META NO。
而且我想不出,就我的一生而言,为什么我会被拒绝,尤其是只在一个平台上。有任何想法吗?
它目前通过 HTTPS 隧道托管,因此它在安全层上运行。
【问题讨论】:
标签: javascript metamask ethers.js