Accounts
useDisconnect
Disconnect the wallet and clear account state
useDisconnect returns a stable function that disconnects the wallet:
accounts empties, selectedAccount and the signer become null, and
status returns to "disconnected". Every account hook reads the same
shared store, so one call updates
useAccounts,
useSelectedAccount and
useSigner across the whole app.
Disconnecting is synchronous, there is nothing to await. It also resets the
shared connect attempt, so a subsequent connect() starts fresh.
Usage
import { useDisconnect, useSelectedAccount } from "@use-truapi/react";
function DisconnectButton() {
const account = useSelectedAccount();
const disconnect = useDisconnect();
if (!account) return null;
return (
<button type="button" onClick={disconnect}>
Disconnect {account.name ?? account.address}
</button>
);
}<script setup lang="ts">
import { useDisconnect, useSelectedAccount } from "@use-truapi/vue";
const account = useSelectedAccount();
const disconnect = useDisconnect();
</script>
<template>
<button v-if="account" type="button" @click="disconnect">
Disconnect {{ account.name ?? account.address }}
</button>
</template>See also
useConnectis the inverse operation, with pending and error state.useAccountsbundles the samedisconnectwith the full account state.
API reference
React
function useDisconnect(): () => void;Returns
() => void
Vue
function useDisconnect(): () => void;Returns
() => void