Prerequisites
Query Balances
import { useState, useEffect } from 'react';
import { View, Text, Button } from 'react-native';
import { useParaCosmos } from './hooks/useParaCosmos';
import { StargateClient } from '@cosmjs/stargate';
const RPC_URL = 'https://rpc.cosmos.directory/cosmoshub';
function BalanceDisplay() {
const { protoSigner, address, isLoading } = useParaCosmos();
const [balances, setBalances] = useState<{ denom: string; amount: string }[]>([]);
const queryBalances = async () => {
if (!address) return;
const client = await StargateClient.connect(RPC_URL);
const allBalances = await client.getAllBalances(address);
setBalances(allBalances);
const atomBalance = await client.getBalance(address, 'uatom');
console.log('ATOM balance:', atomBalance.amount, atomBalance.denom);
};
if (isLoading) return <Text>Loading...</Text>;
return (
<View>
<Text>Address: {address}</Text>
<Button title="Query Balances" onPress={queryBalances} />
{balances.map(balance => (
<Text key={balance.denom}>
{balance.amount} {balance.denom}
</Text>
))}
</View>
);
}