addAbi(abiMap: AbiMap): Promise<boolean>
将 ABI 添加到用户的钱包中。
addAsset(asset: Asset): Promise<boolean>
请求用户为资产添加元数据到钱包。
addAssets(asset: Asset[]): Promise<boolean>
一次请求用户为多个资产添加元数据到钱包。
addNetwork(url: string): Promise<boolean>
请求用户添加一个新的网络。如果成功返回 true,否则返回 false。
clean(): void
清理 Fuel SDK 使用的存储空间,用于跟踪所选连接器。
connect(): Promise<boolean>
请求权限开始项目与钱包之间的连接。返回连接状态。
currentAccount(): Promise<string | null>
返回钱包应用程序中正在使用的当前账户。
如果所选账户未被授权连接,则返回 null。
currentConnector(): FuelConnector
返回当前选择的连接器。
currentNetwork(): Promise<Network>
返回钱包应用程序中正在使用的当前网络。
destroy(): void
移除所有监听器并清理存储。
disconnect(): Promise<boolean>
将项目与钱包断开连接。返回连接状态。
在发生某些操作时,Fuel 会触发事件。可以使用 on
方法监听这些事件。
事件 API 遵循原生 Node.js 的 EventEmitter
,支持 on
、once
和 off
。
可以从 @fuels
包导入事件枚举 FuelConnectorEventTypes
。
fuel
对象有一个 events
属性,它是可以监听的所有事件的枚举。
on
方法接受两个参数,事件名称和回调函数。回调函数接收与事件相关的数据。
fuel.on(fuel.events.connection, (connectionState) => {
console.log(connectionState);
});
事件 | 触发 | 参数 |
---|---|---|
connectors | 连接器变化 | Array<FuelConnector> |
currentConnector | 当前连接器变化 | FuelConnector |
accounts | 可用账户变化 | Array<string> |
currentAccount | 当前账户变化 | string | null |
connection | 连接状态变化 | boolean |
currentNetwork | 当前网络变化 | Network |
assets | 资产元数据变化 | Array<Asset> |
getABI(contractId: string): Promise<JsonAbi>
返回给定 contractId 的 ABI,如果找不到则返回 null。
isConnected(): Promise<boolean>
返回应用程序连接的状态。
getConnector(connectorName: string): FuelConnector
返回具有给定名称的连接器。
getWallet(address: string | AbstractAddress, provider?: Provider): Promise<Account>
返回一个 Account
实例,可用于合约、转账和其他交互。
hasABI(contractId: string): Promise<boolean>
返回一个布尔值,指示给定 contractId 的 ABI 是否已找到。
hasConnector(connectorName?: string | FuelConnector): Promise<boolean>
检查是否存在任何连接器,如果提供了连接器,则检查其是否可用。
accounts(): Promise<Array<string>>
返回当前连接授权的账户列表。
assets(): Promise<Array<Asset>>
返回当前钱包中的资产列表。
connectors(): Promise<Array<FuelConnector>>
返回带有可用性元数据的连接器列表。
networks(): Promise<Array<Network>>
返回当前钱包中的网络列表。
async signMessage(address: string, message: string): Promise<string>
请求特定账户签署消息。
selectConnector(connectorName: string): Promise<boolean>
此方法将检查所需的连接器是否已安装。如果在 1 秒内未检测到,该方法将抛出错误。
selectNetwork(url: string): Promise<boolean>
请求用户切换到另一个网络。如果成功返回 true,否则返回 false。
async sendTransaction(address: string, transaction: TransactionRequestLike): Promise<string>
请求特定用户账户发送交易。
unsubscribe(): void
移除所有打开的监听器。当您想要处理 Fuel 实例并避免内存泄漏时,这很有用。
version(): Promise<string>
返回钱包和网络支持的当前版本。