使用 Orderly SDK 提供的预构建页面组件,快速组装完整的 DEX 页面(如交易页、投资组合、市场行情、排行榜等)
有序网络: SDK 页面组件
功能概述
有序网络: SDK 页面组件是一项面向实际任务的技能,主要用于用于构建完整的 DEX 的预建、 完整版的页面组件;这些组件处理响应性设计( 桌面/ 移动) , 状态管理, 和 UI。
核心要点
- 它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
- 使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。
- 该技能适合需要稳定复用相关能力的场景,可作为自动化工作流的一部分,也便于后续检查、调整和扩展。
使用与执行
从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;
结果检查与注意事项
若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
Orderly Network:SDK 页面组件
开箱即用、功能完备的页面级组件,用于快速构建完整的 DEX。这些组件默认支持响应式设计(桌面端/移动端)、状态管理及 UI 渲染。
适用场景
- 需要快速搭建完整的 DEX
- 希望直接使用已通过生产环境验证的预构建页面
- 需实现标准 DEX 页面(交易页、资产组合页、行情页等)
- 要求页面具备开箱即用的响应式布局能力
前置条件
- 已安装 Orderly SDK 相关包(
@orderly.network/trading、@orderly.network/portfolio、@orderly.network/markets) - 已配置必要的 Provider(参见
orderly-sdk-dex-architecture) - 已设置路由系统(React Router)
概览
| 组件 | 所属包 | 说明 |
|---|---|---|
TradingPage |
@orderly.network/trading |
完整交易界面,包含 TradingView 图表、订单簿、持仓、订单等功能模块 |
OverviewModule.OverviewPage |
@orderly.network/portfolio |
资产组合仪表盘,展示资产总览与历史收益表现 |
PositionsModule.PositionsPage |
@orderly.network/portfolio |
持仓列表页,含历史持仓与强平记录 |
OrdersModule.OrdersPage |
@orderly.network/portfolio |
订单列表页(包括未成交、挂单、已成交订单) |
AssetsModule.AssetsPage |
@orderly.network/portfolio |
资产余额管理页,支持充提币操作 |
HistoryModule.HistoryPage |
@orderly.network/portfolio |
完整交易与资金流水历史(含成交记录、资金费、结算记录) |
MarketsHomePage |
@orderly.network/markets |
行情总览页,列出全部交易对及关键市场指标 |
LeaderboardPage |
@orderly.network/trading-leaderboard |
交易竞赛排行榜页面 |
TradingRewardsPage |
@orderly.network/trading-rewards |
交易奖励计划页面 |
Dashboard |
@orderly.network/affiliate |
推广/返佣计划仪表盘 |
1. TradingPage
主交易界面,集成 TradingView 图表、订单簿、下单面板、持仓与订单模块。
导入方式
import { TradingPage } from '@orderly.network/trading';
Props
interface TradingPageProps {
// 必填:交易标的符号(例如 "PERP_ETH_USDC")
symbol: string;
// 用户切换交易标的时的回调函数
onSymbolChange?: (symbol: API.Symbol) => void;
// TradingView 图表配置
tradingViewConfig: {
scriptSRC?: string; // TradingView 库 JS 文件路径
library_path: string; // charting_library 文件夹路径
customCssUrl?: string; // 图表自定义 CSS 路径
colorConfig?: {
chartBG?: string;
upColor?: string;
downColor?: string;
pnlUpColor?: string;
pnlDownColor?: string;
};
};
// PnL 分享功能配置
sharePnLConfig?: {
backgroundImages?: string[]; // 分享卡片背景图列表
color?: string;
profitColor?: string;
lossColor?: string;
brandColor?: string;
};
// 禁用特定功能模块
disableFeatures?: TradingFeatures[];
// 替换特定模块为自定义组件
overrideFeatures?: Record;
}
enum TradingFeatures {
Sider = 'sider',
TopNavBar = 'topNavBar',
Footer = 'footer',
Header = 'header',
Kline = 'kline',
OrderBook = 'orderBook',
TradeHistory = 'tradeHistory',
Positions = 'positions',
Orders = 'orders',
}
使用示例
import { useCallback, useState } from 'react';
import { useNavigate, useParams } from 'react-router-dom';
import { TradingPage } from '@orderly.network/trading';
import { API } from '@orderly.network/types';
export default function TradingRoute() {
const { symbol: paramSymbol } = useParams();
const [symbol, setSymbol] = useState(paramSymbol || 'PERP_ETH_USDC');
const navigate = useNavigate();
const onSymbolChange = useCallback(
(data: API.Symbol) => {
setSymbol(data.symbol);
navigate(`/perp/${data.symbol}`);
},
[navigate]
);
return (
);
}
TradingView 集成步骤
- 从 TradingView 官网下载 charting_library 前端库
- 解压后放入项目
public/tradingview/charting_library/目录 - 在
tradingViewConfig中正确配置scriptSRC和library_path
2. 资产组合页面(Portfolio Pages)
资产组合功能按模块组织,每个模块均提供一个完整的页面级组件。
导入方式
import {
OverviewModule,
PositionsModule,
OrdersModule,
AssetsModule,
HistoryModule,
} from '@orderly.network/portfolio';
OverviewModule.OverviewPage
资产组合总览页,包含资产汇总、收益图表与近期活动。
interface OverviewPageProps {
hideAffiliateCard?: boolean; // 是否隐藏推广卡片
hideTraderCard?: boolean; // 是否隐藏交易者统计卡片
}
// 使用示例
import { OverviewModule } from '@orderly.network/portfolio';
function PortfolioOverview() {
return ;
}
包含模块:
- 资产汇总小部件
- 资产分布饼图
- 关键收益指标(如 ROI、盈亏比)
- 资金费历史
- 分润历史
PositionsModule.PositionsPage
当前及历史持仓列表,含强平事件记录。
import { PositionsModule } from '@orderly.network/portfolio';
function PositionsRoute() {
return ;
}
标签页:
- 持仓(当前未平仓头寸)
- 持仓历史
- 强平历史
OrdersModule.OrdersPage
订单管理页,支持查看未成交、挂单(TP/SL)及已成交订单。
interface OrdersPageProps {
sharePnLConfig?: SharePnLConfig; // 支持分享已平仓 PnL
}
import { OrdersModule } from '@orderly.network/portfolio';
function OrdersRoute() {
return (
);
}
功能特性:
- 未成交订单(支持一键撤单)
- 挂单(止盈止损单)
- 订单历史(支持导出 CSV)
AssetsModule.AssetsPage
资产余额管理页,支持充提币与跨链转账。
import { AssetsModule } from '@orderly.network/portfolio';
function AssetsRoute() {
return ;
}
功能特性:
- USDC 余额显示
- 充币/提币按钮
- 跨链资产转移(Cross-chain transfers)
- 链上交易历史
HistoryModule.HistoryPage
完整交易与资金流水历史页。
import { HistoryModule } from '@orderly.network/portfolio';
function HistoryRoute() {
return ;
}
标签页:
- 成交历史
- 资金费支付记录
- 结算记录
完整的资产组合布局示例
import { Outlet, NavLink } from 'react-router-dom';
import {
OverviewModule,
PositionsModule,
OrdersModule,
AssetsModule,
HistoryModule,
} from '@orderly.network/portfolio';
// 带导航栏的资产组合布局
function PortfolioLayout() {
return (
);
}
// 路由配置
const portfolioRoutes = [
{
path: 'portfolio',
element: ,
children: [
{ index: true, element: },
{ path: 'positions', element: },
{ path: 'orders', element: },
{ path: 'assets', element: },
{ path: 'history', element: },
],
},
];
3. MarketsHomePage
行情总览页,展示全部交易对、24 小时统计数据及资金费率。
导入方式
import { MarketsHomePage } from '@orderly.network/markets';
Props
interface MarketsHomePageProps {
// 当前选中交易对(用于高亮显示)
symbol?: string;
// 用户点击交易对时的回调
onSymbolChange?: (symbol: API.Symbol) => void;
// 资金费率对比配置
comparisonProps?: {
exchanges?: string[]; // 指定参与对比的交易所(如 'binance'、'okx')
};
// 自定义样式类名
className?: string;
}
使用示例
import { useNavigate } from 'react-router-dom';
import { MarketsHomePage } from '@orderly.network/markets';
function MarketsRoute() {
const navigate = useNavigate();
return (
navigate(`/perp/${symbol.symbol}`)}
comparisonProps={{
exchanges: ['binance', 'okx', 'bybit'],
}}
/>
);
}
标签页:
- 行情(全部交易对及其 24 小时涨跌幅、成交量等)
- 资金(多交易所资金费率横向对比)
4. LeaderboardPage
交易竞赛排行榜页面,支持活动展示与排名查询。
导入方式
import { LeaderboardPage } from '@orderly.network/trading-leaderboard';
使用示例
import { LeaderboardPage } from '@orderly.network/trading-leaderboard';
function LeaderboardRoute() {
return ;
}
包含模块:
- 正在进行的活动横幅
- 奖励概览
- 综合排行榜
- 活动专属排行榜
- 交易规则说明
5. 路由配置(Router Setup)
完整路由配置示例
import { lazy, Suspense } from 'react';
import { createBrowserRouter, Navigate } from 'react-router-dom';
import App from './App';
// 按需懒加载以优化首屏性能
const TradingPage = lazy(() => import('./pages/Trading').then((m) => ({ default: m.default })));
const PortfolioOverview = lazy(() =>
import('@orderly.network/portfolio').then((m) => ({
default: m.OverviewModule.OverviewPage,
}))
);
const MarketsPage = lazy(() =>
import('@orderly.network/markets').then((m) => ({
default: m.MarketsHomePage,
}))
);
const LeaderboardPage = lazy(() =>
import('@orderly.network/trading-leaderboard').then((m) => ({
default: m.LeaderboardPage,
}))
);
const router = createBrowserRouter([
{
path: '/',
element: ,
children: [
{ index: true, element: },
{
path: 'perp/:symbol',
element: (
Loading... 6. 页面定制化
禁用特定功能
import { TradingPage, TradingFeatures } from '@orderly.network/trading';
;
替换指定模块为自定义组件
import { TradingPage, TradingFeatures } from '@orderly.network/trading';
,
[TradingFeatures.Footer]: ,
}}
/>;
自定义样式
所有组件均支持 className 属性,并采用带 oui- 前缀的 Tailwind CSS 类名体系:
.custom-markets-page {
--oui-color-primary: #7b61ff;
}
7. 响应式设计
所有页面组件自动适配桌面端与移动端布局:
- 桌面端:多面板并列布局
- 移动端:垂直堆叠布局,底部导航栏 + 抽屉式详情页(Sheet)
import { useScreen } from '@orderly.network/ui';
function MyPage() {
const { isMobile, isTablet, isDesktop } = useScreen();
return isMobile ? : ;
}
安装
npm install @orderly.network/trading
@orderly.network/portfolio
@orderly.network/markets
@orderly.network/trading-leaderboard
@orderly.network/affiliate
最佳实践
- 懒加载页面:减小初始包体积
- 持久化交易标的:将用户最近选择的
symbol存入localStorage,提升体验 - 同步 URL 状态:确保交易对变更时更新浏览器地址栏,便于收藏与分享
- 定制 TradingView 主题:通过
colorConfig与品牌色保持一致 - 提供 PnL 分享背景图:增强社交传播效果
- 合理使用 Suspense:为异步加载提供流畅的过渡体验
相关技能文档
- orderly-sdk-dex-architecture —— 项目结构与 Provider 配置
- orderly-sdk-install-dependency —— 依赖包安装指南
- orderly-sdk-trading-workflows —— 交易核心流程说明
- orderly-sdk-theming —— 主题与外观定制方法
热门AI工具
相关专题
本专题从实际API接口调试场景出发,讲解Postman身份认证的完整配置流程,包括常见认证协议介绍、授权参数设置、访问令牌填写、OAuth 2.0授权及认证失败排查,帮助用户正确完成接口授权与访问验证。
0
2026.11.06
围绕Postman HTTP请求头配置展开,讲解Headers选项的具体使用方式,包括Key和Value参数填写、请求头信息添加、常见Header字段设置及请求头修改方法,帮助用户解决接口调试过程中遇到的请求头配置问题。
0
2026.11.06
详细介绍Postman接口请求的创建与发送方法,涵盖GET和POST请求、URL配置、请求参数、Headers请求头、Body请求体设置以及响应结果查看,帮助用户掌握Postman接口请求的完整操作流程。
0
2026.11.06
DBeaver数据导入专题,整理Excel、CSV、SQL、TXT等常见文件的数据导入方法,涵盖目标数据库选择、数据表创建、字段映射、数据类型设置及导入参数配置等操作,帮助用户将本地文件中的数据写入数据库,并了解批量导入、重复数据处理和导入失败等常见问题的解决方法。
0
2026.11.05
DBeaver安全防护专题,围绕数据库连接安全、账号密码保护和访问权限管理展开,整理SSL/TLS加密连接、SSH隧道、数据库凭据保存及证书验证等配置方法,同时介绍敏感信息保护、远程连接风险和高权限账号使用等注意事项,帮助用户提高数据库日常管理的安全性。
0
2026.11.05
本专题聚焦DBeaver数据库连接配置与管理,覆盖从新建连接、选择数据库类型到填写连接参数和验证连接的完整流程。针对MySQL、PostgreSQL、SQL Server等常见数据库,整理相应的连接设置方法,并提供驱动缺失、认证失败和连接异常等问题的排查方向。
0
2026.11.04
本专题围绕XORM框架的结构体映射展开,说明表名与字段的命名策略、xorm标签常用属性、主键自增与时间字段自动填充,并演示Sync2自动建表、增量字段升级、索引声明与反向生成结构体的完整流程。
0
2026.11.04
本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。
0
2026.11.04
本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。
0
2026.11.04
热门下载
相关下载
精品课程
共6课时 | 12.1万人学习
共79课时 | 161.7万人学习
共6课时 | 54.7万人学习
最新文章