Saltar al contenido principal

Importar

import { useGetSwapQuote } from '@0xsequence/hooks'

Uso

import { useGetSwapQuote } from '@0xsequence/hooks'

function SwapComponent() {
  const { data: swapQuote, isLoading } = useGetSwapQuote({
    userAddress: '0x123...',
    buyCurrencyAddress: '0x456...',
    sellCurrencyAddress: '0x789...',
    buyAmount: '1000000000000000000', 
    chainId: 1,
    includeApprove: true
  })

  if (isLoading) return <div>Loading...</div>

  return (
    <div>
      {swapQuote && (
        <div>
          Currency: {swapQuote.currencyAddress}
          Price: {swapQuote.price}
          Max Price: {swapQuote.maxPrice}
          Transaction Value: {swapQuote.transactionValue}
        </div>
      )}
    </div>
  )
}

Tipo de retorno: UseQueryResult<SwapQuote>

El hook retorna todas las propiedades de UseQueryResult de React Query con los datos de la cotización de swap. Esta es la estructura detallada:
interface SwapQuote {
  currencyAddress: string
  currencyBalance: string
  price: string
  maxPrice: string
  to: string
  transactionData: string
  transactionValue: string
  approveData: string
}

Propiedades

data

SwapQuote | undefined El objeto de cotización de swap contiene:
  • currencyAddress: Dirección de la moneda a intercambiar
  • currencyBalance: Balance de la moneda en el wallet del usuario
  • price: El precio actual para el swap
  • maxPrice: Precio máximo permitido para el swap (incluye slippage)
  • to: Dirección del contrato destino para el swap
  • transactionData: Datos codificados de la transacción para ejecutar el swap
  • transactionValue: Valor a enviar con la transacción
  • approveData: Datos codificados de la transacción de aprobación (si includeApprove es verdadero)

isLoading

boolean Estado de carga para la obtención de datos.

isError

boolean Estado de error que indica si la consulta falló.

error

Error | null Cualquier error que ocurrió durante la obtención de datos.

Parámetros

El hook acepta dos parámetros:

args: UseGetSwapQuoteArgs

interface UseGetSwapQuoteArgs {
  userAddress: string
  buyCurrencyAddress: string
  sellCurrencyAddress: string
  buyAmount: string
  chainId: number
  includeApprove?: boolean
  slippagePercentage?: number
}
ParámetroTypeDescription
userAddressstringLa dirección del wallet del usuario
buyCurrencyAddressstringLa dirección de la moneda a comprar
sellCurrencyAddressstringLa dirección de la moneda a vender
buyAmountstringLa cantidad de moneda a comprar (en unidades base)
chainIdnumberEl chain ID donde se realizará el swap
includeApproveboolean(Opcional) Indica si se deben incluir los datos de la transacción de aprobación
slippagePercentagenumber(Opcional) Porcentaje máximo de slippage permitido

options: HooksOptions

interface HooksOptions {
  disabled?: boolean
  retry?: boolean
}
ParámetroTypeDescription
disabledboolean(Opcional) Deshabilitar la consulta para que no se ejecute automáticamente
retryboolean(Opcional) Indica si se deben reintentar las consultas fallidas