useTransactionListener
即時監聽 Kaspa 網路中已接受的交易 ID。它使用 virtual-chain-changed 訂閱,當交易被確認時就會捕捉到。
匯入
ts
import { useTransactionListener } from 'vue-kaspa'回傳型別
ts
interface UseTransactionListenerReturn {
transactions: Readonly<Ref<string[]>>
acceptedTransactions: Readonly<Ref<Array<{
transactionId: string
acceptingBlockHash: string
senderAddresses: string[]
}>>>
isListening: ComputedRef<boolean>
subscribe(): Promise<void>
unsubscribe(): Promise<void>
clear(): void
resolveSenderAddresses(transactionId: string): Promise<string[]>
}選項
ts
interface TransactionListenerOptions {
maxHistory?: number
autoSubscribe?: boolean
includeSenderAddresses?: boolean
}基本用法
ts
import { useTransactionListener } from 'vue-kaspa'
const { transactions, acceptedTransactions, isListening } = useTransactionListener()啟用 includeSenderAddresses 後,會從接受該交易的區塊解析送出方地址。
手動控制
ts
const { transactions, acceptedTransactions, isListening, subscribe, unsubscribe, clear, resolveSenderAddresses } = useTransactionListener({
autoSubscribe: false,
includeSenderAddresses: true,
})注意事項
- 使用
virtual-chain-changed,因此只會處理已確認狀態。 - 一筆交易可能會對應多個 sender addresses。
- 若你要的是原始區塊事件,請使用
useBlockListener()。
