подключитесь к trustwallet и получите адреса и балансы bsc, eth, btc
прямо сейчас я использую этот код:https://github.com/Web3Modal/web3modal-vanilla-js-example
но он подключает только адрес eth из доверенного кошелька
Я попытался изменить параметры провайдера на это:
const providerOptions = {
walletconnect: {
package: WalletConnectProvider,
options: {
rpc: {
56: "https://bsc-dataseed.binance.org/"}
}
},
Но не сработало
В моем доверенном кошельке есть адрес btc, адрес eth, адрес bnb, и я хочу знать все эти адреса и балансы. Но сейчас я могу получить только адрес eth
Я пробовал это сделать:
const chainId = 56//await web3.eth.getChainId();
// Get list of accounts of the connected wallet
const accounts = await web3.eth.getAccounts();
Но это дает мне только учетные записи eth. Так что же мне делать?
2 ответа
Вам нужно попросить пользователя изменить цепочку в самом кошельке, чтобы получить доступ к аккаунтам в разных цепочках. В настоящее время не существует API или способа заставить пользователя изменить цепочку.
В моем случае это работало с кошельком Trust и не работало с мобильным приложением метамаски:
walletconnect: {
package: WalletConnectProvider, // required
options: {
rpc: {
56: 'https://bsc-dataseed.binance.org/',
97: 'https://data-seed-prebsc-1-s1.binance.org:8545/',
},
network: "binance", // --> this will be use to determine chain id 56
},
},
Я не уверен, что код ниже требуется:
web3Modal = new Web3Modal({
network: 'binance', // optional
cacheProvider: true,
providerOptions, // required
})
Вы можете узнать, как настроить, непосредственно прочитав исходный код: // Выберите BSC для работы с кошельком Trust, но не для метамаски https://github.com/Web3Modal/web3modal/blob/72596699b97d231dfaa5ef04110b61b8dc77d57d/src/providers/connectors/walletconnect.ts#L30https://github.com/Web3Modal/web3modal/blob/72596699b97d231dfaa5ef04110b61b8dc77d57d/src/helpers/utils.ts#L198