Importar
import { useIndexerClient } from '@0xsequence/hooks'
Uso
import { useIndexerClient } from '@0xsequence/hooks'
import { ContractVerificationStatus } from '@0xsequence/connect'
function TokenBalanceChecker() {
const chainId = 1 // Ethereum mainnet
const indexerClient = useIndexerClient(chainId)
const { address } = useAccount()
const checkBalance = async () => {
// Get native token balance
const nativeBalance = await indexerClient.getNativeTokenBalance({
accountAddress: address
})
// Get token balances
const tokenBalances = await indexerClient.getTokenBalancesSummary({
filter: {
accountAddresses: [address],
contractStatus: ContractVerificationStatus.ALL,
omitNativeBalances: true
}
})
console.log('Native balance:', nativeBalance)
console.log('Token balances:', tokenBalances)
}
return (
<button onClick={checkBalance}>
Check Balances
</button>
)
}
Tipo de retorno: SequenceIndexer
Retorna una instancia de SequenceIndexer
configurada para el ID de red especificado.
Parámetros
chainId
ChainId
El ID de la red para crear un cliente indexador. Debe ser un ID de red soportado por @0xsequence/network
.
Hooks relacionados
Para aplicaciones que necesitan trabajar con múltiples redes simultáneamente, considere usar useIndexerClients
. Acepta un arreglo de IDs de red y retorna un Map de clientes indexadores, permitiendo operaciones en paralelo entre diferentes redes.
Uso con useIndexerClients
import { useIndexerClients } from '@0xsequence/hooks'
const TransactionFetcher = () => {
// Get indexer clients for Ethereum mainnet and Polygon
const indexerClients = useIndexerClients([1, 137])
// Use the clients to fetch data
const fetchData = async () => {
// Get Ethereum client
const ethClient = indexerClients.get(1)
// Get Polygon client
const polygonClient = indexerClients.get(137)
// Make parallel requests
const [ethData, polygonData] = await Promise.all([
ethClient.getTransactionHistory(...),
polygonClient.getTransactionHistory(...)
])
}
}