题目
一个 DApp 需要让用户同时保持多个钱包连接,并在它们之间切换。团队接入 useSwitchConnection 后发现:切换后旧连接的待签流程仍在运行,断开当前连接后界面也没有回到空状态。请说明多连接管理与切换的正确做法。
考察目标
- 多连接列表与切换 API 的用法。
- 切换与断开时的状态清理责任。
- 连接列表与可用 connector 列表的区别。
用 useConnections 渲染列表、用 useSwitchConnection 切换,切换后显式清理业务状态。
一个 DApp 需要让用户同时保持多个钱包连接,并在它们之间切换。团队接入 useSwitchConnection 后发现:切换后旧连接的待签流程仍在运行,断开当前连接后界面也没有回到空状态。请说明多连接管理与切换的正确做法。
useConnections 返回所有活动连接组成的列表,useConnection 返回当前连接;useSwitchConnection 通过 mutate({ connector }) 切换当前连接。useConnectors 返回可用 connector 列表,与已建立的连接不同。切换或断开后,表单、待签内容等绑定旧连接的业务状态需要显式清理。实现差异与工程取舍见深入回答。
switchConnection.mutate({ connector: connection.connector })(依据:wagmi useSwitchConnection §Usage)。发现这道题有问题? 反馈此题