How to load web3 correctly ? this is my code:
JavaScript
x
13
13
1
async loadweb3() {
2
if (window.ethereum) {
3
window.web3 = new Web3(window.ethereum)
4
5
await window.ethereum.enable()
6
} else if (window.web3) {
7
window.web3 =new Web3(window.web3.currentProvider)
8
9
} else {
10
window.alert(' Non-Ethereum browser detected, Ypu should consider trying Metamask')
11
}
12
}
13
Advertisement
Answer
window.web3
is deprecated. easies way is to use @metamask/detect-provider
npm package
JavaScript
1
9
1
import detectEthereumProvider from "@metamask/detect-provider";
2
3
const provider = await detectEthereumProvider();
4
// only if provider is detected, create web3 instance and then create contract
5
if (provider) {
6
const web3 = new Web3(provider);
7
const contract = .whatever create contract api u are using
8
..
9