[英]MetaMask no longer injects web3
如何正确加载web3? 这是我的代码:
async loadweb3() {
if (window.ethereum) {
window.web3 = new Web3(window.ethereum)
await window.ethereum.enable()
} else if (window.web3) {
window.web3 =new Web3(window.web3.currentProvider)
} else {
window.alert(' Non-Ethereum browser detected, Ypu should consider trying Metamask')
}
}
window.web3
已弃用。 简单的方法是使用@metamask/detect-provider
npm package
import detectEthereumProvider from "@metamask/detect-provider";
const provider = await detectEthereumProvider();
// only if provider is detected, create web3 instance and then create contract
if (provider) {
const web3 = new Web3(provider);
const contract = ..........whatever create contract api u are using
.....
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.