返回顶部
o

orderly-sdk-wallet-connection钱包连接集成

Comprehensive guide to integrating wallet connection in Orderly Network DEX applications, supporting both EVM (Ethereum, Arbitrum, etc.) and Solana wallets.

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.0
安全检测
已通过
229
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

orderly-sdk-wallet-connection

Orderly Network: SDK钱包连接

在Orderly Network DEX应用中集成钱包连接的全面指南,支持EVM(以太坊、Arbitrum等)和Solana钱包。

使用场景

  • - 为新DEX设置钱包连接
  • 支持多种钱包类型(MetaMask、Phantom等)
  • 实现链切换
  • 管理认证状态

前置条件

  • - 已安装Orderly SDK包
  • 已配置Provider(参见orderly-sdk-dex-architecture)
  • 已安装钱包包(@web3-onboard/、@solana/wallet-adapter-

概述

Orderly Network支持全链交易,意味着用户可以连接来自多个区块链生态系统的钱包:

  • - EVM链:以太坊、Arbitrum、Optimism、Base、Polygon、BSC、Avalanche等
  • Solana:主网和开发网

SDK提供了一个统一的钱包连接层,抽象了这些生态系统之间的差异。

钱包连接器包

注意:@orderly.network/wallet-connector包开箱即用,带有合理的默认配置。solanaInitial和evmInitial属性都是可选的

bash

主连接器包


npm install @orderly.network/wallet-connector

可选:EVM钱包包(用于自定义钱包配置,如WalletConnect)

npm install @web3-onboard/injected-wallets @web3-onboard/walletconnect

可选:Solana钱包包(用于自定义Solana钱包配置)

npm install @solana/wallet-adapter-base @solana/wallet-adapter-wallets

必需依赖项汇总

用途必需场景
@web3-onboard/injected-walletsMetaMask、Coinbase Wallet、Rabby等EVM钱包连接
@web3-onboard/walletconnect
WalletConnect协议 | 移动端和多平台钱包 | | @solana/wallet-adapter-base | Solana钱包适配器基础 | 所有Solana钱包 | | @solana/wallet-adapter-wallets | Phantom、Solflare、Ledger适配器 | Solana钱包连接 |

架构

┌──────────────────────────────────────────────────────────────┐
│ WalletConnectorProvider │
│ ┌───────────────────────────────────────────────────────┐ │
│ │ SolanaProvider │ │
│ │ (ConnectionProvider + WalletProvider + ModalProvider)│ │
│ │ ┌───────────────────────────────────────────────┐ │ │
│ │ │ InitEvm │ │ │
│ │ │ (Web3OnboardProvider for EVM wallets) │ │ │
│ │ │ ┌─────────────────────────────────────────┐ │ │ │
│ │ │ │ Main │ │ │ │
│ │ │ │ (WalletConnectorContext - unified API) │ │ │ │
│ │ │ │ ┌─────────────────────────────────┐ │ │ │ │
│ │ │ │ │ Your App │ │ │ │ │
│ │ │ │ └─────────────────────────────────┘ │ │ │ │
│ │ │ └─────────────────────────────────────────┘ │ │ │
│ │ └───────────────────────────────────────────────┘ │ │
│ └───────────────────────────────────────────────────────┘ │
└──────────────────────────────────────────────────────────────┘

基本设置

重要:networkId必须在WalletConnectorProvider(Solana网络)和OrderlyAppProvider之间保持一致。

1. WalletConnectorProvider

使用WalletConnectorProvider包裹您的应用。

最小设置(使用默认配置):

tsx
import { WalletConnectorProvider } from @orderly.network/wallet-connector;
import { OrderlyAppProvider } from @orderly.network/react-app;
import type { NetworkId } from @orderly.network/types;

function App() {
const networkId: NetworkId = mainnet;

return (

brokerId=yourbrokerid
brokerName=Your DEX Name
networkId={networkId}
>



);
}

自定义设置(显式钱包配置):

tsx
import { WalletConnectorProvider } from @orderly.network/wallet-connector;
import { WalletAdapterNetwork } from @solana/wallet-adapter-base;
import { OrderlyAppProvider } from @orderly.network/react-app;
import type { NetworkId } from @orderly.network/types;

function App() {
const networkId: NetworkId = mainnet;

return (
solanaInitial={{
network:
networkId === mainnet ? WalletAdapterNetwork.Mainnet : WalletAdapterNetwork.Devnet,
wallets: getSolanaWallets(),
}}
evmInitial={{
options: {
wallets: getEvmWallets(),
appMetadata: {
name: My DEX,
description: Decentralized Exchange,
},
},
}}
>
brokerId=yourbrokerid
brokerName=Your DEX Name
networkId={networkId}
>



);
}

2. 配置EVM钱包

tsx
import injectedOnboard from @web3-onboard/injected-wallets;
import walletConnectOnboard from @web3-onboard/walletconnect;
import binanceWallet from @binance/w3w-blocknative-connector;

export function getEvmWallets() {
const walletConnectProjectId = YOURWALLETCONNECTPROJECT_ID;

return [
// 注入式钱包(MetaMask、Rabby、Coinbase等)
injectedOnboard(),

// Binance Web3钱包
binanceWallet({ options: { lng: en } }),

// WalletConnect(用于移动端钱包)
walletConnectOnboard({
projectId: walletConnectProjectId,
qrModalOptions: { themeMode: dark },
dappUrl: window.location.origin,
}),
];
}

3. 配置Solana钱包

tsx
import { WalletAdapterNetwork } from @solana/wallet-adapter-base;
import {
PhantomWalletAdapter,
SolflareWalletAdapter,
LedgerWalletAdapter,
} from @solana/wallet-adapter-wallets;

export function getSolanaWallets(networkId: mainnet | testnet) {
return [new PhantomWalletAdapter(), new SolflareWalletAdapter(), new LedgerWalletAdapter()];
}

使用钱包连接

访问钱包上下文

SDK提供了统一的WalletConnectorContext:

tsx
import { useContext } from react;
import { WalletConnectorContext } from @orderly.network/hooks;

function WalletStatus() {
const {
connect, // 连接钱包函数
disconnect, // 断开钱包函数
connecting, // 布尔值:连接进行中
wallet, // 已连接的钱包信息
connectedChain, // 当前链信息
setChain, // 切换链函数
namespace, // evm | solana | null
} = useContext(WalletConnectorContext);

return (


{wallet ? (
<>

已连接:{wallet.accounts[0].address}


链:{connectedChain?.id}




) : (

)}

);
}

连接到特定链

tsx
const { connect } = useContext(WalletConnectorContext);

// 连接到EVM链(Arbitrum)
await connect({ chainId: 42161 });

// 连接到Solana
await connect({ chainId: 900900900 }); // Solana主网

切换链

tsx
const { setChain, connectedChain } = useContext(WalletConnectorContext);

// 切换到Optimism
await setChain({ chainId: 0xa }); // EVM的十六进制格式

// 切换到Base
await setChain({ chainId: 0x2105 });

账户状态机

钱包连接后,用户

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 orderly-sdk-wallet-connection-1776193098 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 orderly-sdk-wallet-connection-1776193098 技能

通过命令行安装

skillhub install orderly-sdk-wallet-connection-1776193098

下载

⬇ 下载 orderly-sdk-wallet-connection v1.0.0(免费)

文件大小: 4.63 KB | 发布时间: 2026-4-15 12:36

v1.0.0 最新 2026-4-15 12:36
Initial release of orderly-sdk-wallet-connection, providing a unified integration guide for wallet connections in Orderly Network DEX apps.

- Supports both EVM (Ethereum, Arbitrum, etc.) and Solana wallet connections.
- Introduces the @orderly.network/wallet-connector package for seamless multi-chain wallet integration.
- Includes instructions for customizing wallet providers and chain switching.
- Explains use of WalletConnectorProvider and unified WalletConnectorContext for managing wallet state.
- Guides developers through configuration for MetaMask, WalletConnect, Phantom, Solflare, and more.

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部