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
switchChain
when connected.