Components
这里对 Suiue
提供的 VUE
组件提供说明
SuiueProvider
- props
- config
typescript
import {SuiClient} from "@mysten/sui.js/client";
import {SuiGraphQLClient} from "@mysten/sui.js/graphql";
interface SuiueProviderConfig {
// 指定当前 provider 的 id,用于记录 autoConnect 信息
// 在有多个 provider 的情况下,需要指定不同的 id, 多个 provider 的情况暂未经过验证, 请谨慎使用
// 主要用来同时连接多个钱包
id?: string,
// 是否自动连接钱包, 默认为 "disable"
// "enable" 为自动连接, last 在用户上次连接过,并且没有断开的情况才会自动连接
autoConnect?: "enable" | "disable" | "last",
// 指定连接钱包所使用的网络
// 默认为 "mainnet"
network?: "mainnet" | "testnet" | "devnet" | "localnet",
// 自定义 suiClient
suiClient?: SuiClient,
// 自定义 suiClientQL, useWalletQuery 使用 graphql 进行查询
// 生产环境下建议你自己搭建一个 graphql 服务器,
// 默认的情况下是使用官方的 graphql 服务器,只支持 mainnet 和 testnet, 而且延迟高,不适合生产环境
// https://docs.sui.io/guides/developer/getting-started/graphql-rpc
suiClientQL?: SuiGraphQLClient<any>,
// 可以将希望排在前面的钱包放在这里,例如 ["sui wallet", "okx wallet"]
// 在用户安装了上面两个钱包的情况下,会优先显示 "sui wallet" 和 "okx wallet"
preferredWallets?: string[],
// 钱包需要的特性,如果指定了特性,那么只会显示符合特性的钱包
// 同时,如果调用了没有被指定的特性的方法,会抛出异常
// 默认为全部特性
requiredFeatures?: ("standard:connect" | "standard:events" | "standard:disconnect" | "sui:signMessage" | "sui:signTransactionBlock" | "sui:signAndExecuteTransactionBlock" | "sui:signPersonalMessage")[]
// 自定义钱包过滤器,可以根据钱包的信息进行过滤,返回 true 表示符合要求
walletFilter?: (wallet: Wallet) => boolean
// 在 walletQuery 查询失败时,重试的次数,默认为 5
queryRetry?: number
// 在 walletQuery 查询失败时,重试的间隔时间,默认为 5000ms
queryRetryIntervalMs?: number
}
- v-models
- state 同 useWalletState,只是这里双向绑定,方便使用,建议还是使用 useWalletState
- query 同上
- actions 同上
NConnectButton
使用 naive-ui
封装的 connect-button
,未来可能会考虑推出一个原生的按钮,因此使用与 naive-ui
相关的 n
作为前缀