Skip to main content
Powfi 持有网络配置、节点和浏览器 provider、可选的签名器,以及每个协议模块的一个实例。

Powfi.load(params)

等价于 new Powfi(params)。同步执行,不发起网络请求。会把实例的 provider 注册为全局 @alephium/web3 默认值(见 setCurrentProviders())。
'mainnet' | 'testnet' | 'devnet'
必填
选择内置端点和打包的合约部署。
SignerProvider
任意 @alephium/web3 签名器(PrivateKeyWallet、NodeWallet、浏览器钱包连接器)。写入方法必需。
Partial<Omit<Network, 'id'>>
覆盖 nodeUrl、nodeApiKey、explorerApiUrl、explorerUrl、tokenListUrl 或 name。见网络。

模块

CpmmModule
恒定乘积池。参考
ClmmModule
集中流动性池。参考
StakingModule
xALPH 质押。参考
TokenModule
代币元数据。参考

属性

方法

setCurrentProviders()

把当前实例的 nodeProvider 和 explorerProvider 注册为全局 @alephium/web3 provider(web3.setCurrentNodeProvider、web3.setCurrentExplorerProvider)。Powfi.load 已经调用过它,所以只有在同时运行多个 SDK 实例、需要切换原始合约产物和其他依赖全局 provider 的库所用的实例时,才需要调用。

clearSigner() / clearAccount()

移除签名器或账户,例如在钱包断开连接时。之后写入方法会抛出错误,直到设置新的签名器。

切换钱包

签名器可以在运行时更换,无需重新加载 SDK:
模块在每次调用时读取 powfi.signer,所以不需要重置其他状态。CLMM 模块会缓存费率档位配置,代币模块会缓存代币列表。这两个缓存都与网络相关,与钱包无关。