wagmi连接器
cyotee2026-10-27查看 769复制 767
用于 MetaMask、WalletConnect、注入式钱包等的钱包连接器。适用于设置钱包连接时。
📘如何使用这个技能
- 1复制技能内容·点击上方「Copy SKILL.md」复制全部内容,或 Download 下载到本地
- 2打开你的 AI 客户端·支持 Claude Code、Trae、Cursor、ChatGPT、DeepSeek、Kimi 等任意 AI 助手
- 3粘贴为系统提示/知识文件·Claude Code:放入 .claude/skills/ 目录;普通对话:作为首条消息发送并说「请严格按这份技能文档执行」
- 4直接提出你的需求·AI 会按技能定义的工作流、格式和约束来处理,无需再解释背景
💡 提示:技能生效后,每次对话只需一句需求,AI 会按 SKILL.md 的流程执行。
SKILL.md2462 chars
---
name: wagmi-connectors
description: Wallet connectors for MetaMask, WalletConnect, injected, and more. Use when setting up wallet connections.
---
# Wagmi Connectors
Wallet connection adapters.
## Setup Connectors
```typescript
import { createConfig, http } from '@wagmi/core'
import { mainnet, sepolia } from '@wagmi/core/chains'
import { injected } from '@wagmi/connectors'
import { walletConnect } from '@wagmi/connectors'
import { safe } from '@wagmi/connectors'
export const config = createConfig({
chains: [mainnet, sepolia],
connectors: [
injected(), // Browser wallets (MetaMask, etc.)
walletConnect({ projectId: '...' }),
safe()
],
transports: { ... }
})
```
## Connect/Disconnect
```typescript
import { connect, disconnect, getConnection } from '@wagmi/core'
// Connect
const { account, chainId, connector } = await connect(config, {
connector: injected() // or omit to use first available
})
// Get current connection
const { account, chainId } = getConnection(config)
// Disconnect
await disconnect(config)
```
## Available Connectors
### Injected (Browser Wallets)
```typescript
import { injected } from '@wagmi/connectors'
injected({
shimDisconnect: true // persist disconnect state
})
```
### MetaMask
```typescript
import { metaMask } from '@wagmi/connectors'
metaMask({
shimDisconnect: true,
flag: 'all' // or 'ethereum'
})
```
### WalletConnect
```typescript
import { walletConnect } from '@wagmi/connectors'
walletConnect({
projectId: 'YOUR_PROJECT_ID',
showQrModal: true,
qrModalOptions: {
themeMode: 'dark'
}
})
```
### Safe (Gnosis Safe)
```typescript
import { safe } from '@wagmi/connectors'
safe({
allowedDomains: [/gnosis-safe.io$/, /app.safe.global$/],
debug: false
})
```
### Mock (Testing)
```typescript
import { mock } from '@wagmi/connectors'
mock({
accounts: [privateKeyToAccount('0x...')],
chainId: 1
})
```
## Switch Chains
```typescript
import { switchChain } from '@wagmi/core'
import { base } from '@wagmi/core/chains'
await switchChain(config, { chainId: base.id })
```
## Watch Connections
```typescript
import { watchConnections, watchConnector } from '@wagmi/core'
// Watch all connections
watchConnections(config, (connections) => {
console.log('Connections:', connections)
})
// Watch specific connector
watchConnector(config, 'injected', (connector) => {
console.log('Injected connector:', connector)
})
```