Next.js
LI.FI Widget 与 Next.js 应用完全兼容,只需极少的配置即可无缝集成。 由于 Next.js 中服务端渲染(SSR)的特性,以及不同钱包库管理其与钱包扩展连接的方式,LI.FI Widget 需要专门在客户端进行渲染。为此,请使用'use client' 指令,确保 widget 组件仅在客户端环境中渲染。
请查看我们在 widget 仓库中的完整示例这里。
如果你正在使用带 App Router 的 Next.js,以下示例展示了如何将 widget 添加到某个页面:
Widget 骨架屏
为方便用户,我们提供了WidgetSkeleton 组件,可在主 widget 组件加载期间用作占位内容。
WidgetSkeleton 组件目前仅在 Next.js 环境中经过测试,可能无法与其他 SSR 框架配合使用。
Widget 骨架屏
内部路由
Widget v4 在内部使用 TanStack Router,而不再使用 React Router。这意味着:- 无需通配符路由:如果你之前在使用 React Router 时必须为 widget 配置通配符路由(例如
/swap/*),现在不再需要这样做。 - 无冲突:widget 的内部路由完全隔离,不会干扰你应用的路由,无论你使用哪个路由库。
其他框架
我们为各种框架提供了完整示例:- Vite (React) - 标准 React 设置,无需特殊配置
- Remix - 使用
remix-utils中的ClientOnly - React Router 7 - 采用与
ClientOnly类似的模式 - TanStack Router - 可与 widget 的内部路由并存
- Vue - 使用 Veaury 包装 React 组件
- Nuxt.js - 将 Veaury 与 Nuxt 的
ClientOnly配合使用 - Svelte - React 适配器组件
钱包提供者集成
我们还提供了将 widget 与流行钱包连接库集成的示例:- RainbowKit - 面向 Ethereum 的流行钱包连接库
- ConnectKit - Family 的钱包连接库
- Reown AppKit - Reown(前身为 WalletConnect)的 AppKit
- Privy - Privy 内嵌钱包集成
- Privy with Ethers - Privy 与 Ethers.js
- Dynamic - Dynamic 钱包集成
其他示例
- Zustand Widget Config - 使用 Zustand 进行状态管理
- Deposit Flow - 自定义存款流程实现

