题目
团队同时配置了 injected 与 metaMask 两个 connector,测试时发现钱包列表里出现两个 MetaMask 入口;也有人问:没有安装扩展的用户能不能用 metaMask connector 连接。请说明两者的差异与选型边界。
考察目标
- 两个 connector 的工作前提与覆盖范围。
- 依赖与配置项差异。
- 重复入口的处理与选型取舍。
对比两条 MetaMask 接入路径的前提、依赖与覆盖范围,并处理重复入口。
团队同时配置了 injected 与 metaMask 两个 connector,测试时发现钱包列表里出现两个 MetaMask 入口;也有人问:没有安装扩展的用户能不能用 metaMask connector 连接。请说明两者的差异与选型边界。
injected connector 面向 EIP-1193 provider,依赖页面中已经存在的 provider,扩展未注入时需要等待或先禁用入口;metaMask connector 基于 MetaMask Connect,文档要求安装 @metamask/connect-evm,并提供 dapp 元数据、connectAndSign 与 connectWith 等参数。metaMask connector 的文档还说明:检测到 EIP-6963 的 MetaMask 注入 provider 时,它会默认替换该 provider。因此同时配置两者时,列表里可能出现重复入口,需要在产品层做取舍。实现差异与工程取舍见深入回答。
发现这道题有问题? 反馈此题