switchChain ​
Action for switching the target chain for a connector or the Wagmi Config.
Import ​
ts
import { switchChain } from '@wagmi/core'import { switchChain } from '@wagmi/core'Usage ​
ts
import { switchChain } from '@wagmi/core'
import { mainnet } from '@wagmi/core/chains'
import { config } from './config'
await switchChain(config, { chainId: mainnet.id })import { switchChain } from '@wagmi/core'
import { mainnet } from '@wagmi/core/chains'
import { config } from './config'
await switchChain(config, { chainId: mainnet.id })ts
import { http, createConfig } from '@wagmi/core'
import { mainnet, sepolia } from '@wagmi/core/chains'
export const config = createConfig({
chains: [mainnet, sepolia],
transports: {
[mainnet.id]: http(),
[sepolia.id]: http(),
},
})import { http, createConfig } from '@wagmi/core'
import { mainnet, sepolia } from '@wagmi/core/chains'
export const config = createConfig({
chains: [mainnet, sepolia],
transports: {
[mainnet.id]: http(),
[sepolia.id]: http(),
},
})TIP
When connected, switchChain will switch the target chain for the connector. When not connected, switchChain will switch the target chain for the Wagmi Config.
Parameters ​
ts
import { type SwitchChainParameters } from '@wagmi/core'import { type SwitchChainParameters } from '@wagmi/core'chainId ​
config['chains'][number]['id'] | undefined
ID of chain to switch to.
ts
import { switchChain } from '@wagmi/core'
import { mainnet } from '@wagmi/core/chains'
import { config } from './config'
const result = await switchChain(config, {
chainId: mainnet.id,
})import { switchChain } from '@wagmi/core'
import { mainnet } from '@wagmi/core/chains'
import { config } from './config'
const result = await switchChain(config, {
chainId: mainnet.id,
})ts
import { http, createConfig } from '@wagmi/core'
import { mainnet, sepolia } from '@wagmi/core/chains'
export const config = createConfig({
chains: [mainnet, sepolia],
transports: {
[mainnet.id]: http(),
[sepolia.id]: http(),
},
})import { http, createConfig } from '@wagmi/core'
import { mainnet, sepolia } from '@wagmi/core/chains'
export const config = createConfig({
chains: [mainnet, sepolia],
transports: {
[mainnet.id]: http(),
[sepolia.id]: http(),
},
})connector ​
Connector
Connector to switch chain with.
ts
import { getConnections, switchAccount } from '@wagmi/core'
import { mainnet } from '@wagmi/core/chains'
import { config } from './config'
const connections = getConnections(config)
const result = await switchChain(config, {
chainId: mainnet.id,
connector: connections[0]?.connector,
})import { getConnections, switchAccount } from '@wagmi/core'
import { mainnet } from '@wagmi/core/chains'
import { config } from './config'
const connections = getConnections(config)
const result = await switchChain(config, {
chainId: mainnet.id,
connector: connections[0]?.connector,
})ts
import { http, createConfig } from '@wagmi/core'
import { mainnet, sepolia } from '@wagmi/core/chains'
export const config = createConfig({
chains: [mainnet, sepolia],
transports: {
[mainnet.id]: http(),
[sepolia.id]: http(),
},
})import { http, createConfig } from '@wagmi/core'
import { mainnet, sepolia } from '@wagmi/core/chains'
export const config = createConfig({
chains: [mainnet, sepolia],
transports: {
[mainnet.id]: http(),
[sepolia.id]: http(),
},
})Return Type ​
ts
import { type SwitchChainReturnType } from '@wagmi/core'import { type SwitchChainReturnType } from '@wagmi/core'Chain
Chain that was switched to.
Error ​
ts
import { type SwitchChainErrorType } from '@wagmi/core'import { type SwitchChainErrorType } from '@wagmi/core'TanStack Query ​
ts
import {
type SwitchChainData,
type SwitchChainVariables,
type SwitchChainMutate,
type SwitchChainMutateAsync,
switchChainMutationOptions,
} from '@wagmi/core/query'import {
type SwitchChainData,
type SwitchChainVariables,
type SwitchChainMutate,
type SwitchChainMutateAsync,
switchChainMutationOptions,
} from '@wagmi/core/query'Viem ​
switchChainwhen connected.